2012-12-07 101 views
2

也许这是一个愚蠢的问题htaccess的动态查询字符串

我有低于当前代码:

RewriteEngine On 
    RewriteRule ^(.*) /image/modify.php?pic=$1 [QSA] 

,我输入网址http://site.com/image/20121207/test.jpg&w=256

将显示调整形象。原始URL是:

http://site.com/image/modify.php?pic=20121207/test.jpg&w=256

但我怎样才能改变& w = to?w =?

的W =都是随机的,也许有人会进入H =/R = ...等

,请给我一些暗示

+0

我已经添加新的答案... 看看你眼花缭乱! –

回答

1

阿帕奇重写足够智能,正确处理查询参数。这就是QSA的作用,“查询字符串附加”。您可以访问20121207/test.jpg?w=256,并且应该正确地重写为modify.php?pic=20121207/test.jpg&w=256

+0

但我输入?w = 256它显示原点宽度图像 –

+0

这太抽象了。你在脚本中接收了什么'$ _GET'参数? – deceze

+0

if(isset($ _ GET ['pic'])&& isset($ _ GET ['w'])|| isset($ _ GET ['h'])) –

1

试试这个:

RewriteRule ^([^/]+)/([^/]+)/([^?&]+)?(.*) /image/modify.php?pic=$1$2$3&$4 [QSA] 
+0

not working .. ... –

1

那么容易:

RewriteEngine On 
RewriteRule ^([^/]*)(?)(.*)$ /image/modify.php?pic=$1&$2 [QSA] 

希望它的工作....

+0

不行:-( –

+0

看到我最后的回答! –

+0

你最后的答案在哪里? –

1

如何:

RewriteEngine On 
RewriteRule ^image/([^/]*)(?)(.*)$ /image/modify.php?pic=$1&$2 [QSA] 

,并输入网址:

http://site.com/image/20121207/test.jpg?w=256 

我已经尝试它,我认为这将工作... 好运

+0

宽度没有改变 –

+0

有人...... ??。 –