/foo/.htaccess执行内部重定向
RewriteRule ^(.*)$ /bar/?%{ENV:UNIQUE_ID}
Run Code Online (Sandbox Code Playgroud)
/bar/.htaccess需要认识到请求不是内部的,问题是我无法弄清楚如何使比较工作
RewriteCond %{ENV:UNIQUE_ID} !%{QUERY_STRING}
Run Code Online (Sandbox Code Playgroud)
甚至一个
RewriteCond %{QUERY_STRING} %{QUERY_STRING}
Run Code Online (Sandbox Code Playgroud)
不匹配,我想在表达式的右边有一个语法问题,转义%没有帮助.
我测试了上面的两个变量在内部重定向上具有相同的值
RewriteRule ^(.*)$ /test/%{QUERY_STRING}/%{ENV:UNIQUE_ID}
Run Code Online (Sandbox Code Playgroud)
会表明它.
服务器是Apache/2.2.3
谢谢,劳里安
Gum*_*mbo 15
遗憾的是,您无法直接将两个变量与mod_rewrite进行比较.(或者至少我不知道怎么做.)
但有一个解决方法:
RewriteCond %{ENV:UNIQUE_ID}:%{QUERY_STRING} !^(.+):\1$
Run Code Online (Sandbox Code Playgroud)
我选择了:as分隔符,但如果您愿意,可以使用任何其他分隔符.如果你可以指定UNIQUE_ID值的结构,你应该这样做.
| 归档时间: |
|
| 查看次数: |
2835 次 |
| 最近记录: |