我重写了这样的规则:
RewriteRule ^/d/categories$ /categories.php [L]
提供$_SERVER['REQUEST_URI']
= / d / categories
但现在我有一些要求添加更多级别的重定向
RewriteRule ^/$ /d/categories [L]
提供$_SERVER['REQUEST_URI']
= (空)
我们可以获得任何htaccess
标志,或者我现在在想什么是不可能的?
$_SERVER['REQUEST_URI']
= / d / categories
我已经尝试L
,P
和PT
没有效果。我无法添加重定向规则,以便从/
重定向到/d/categories
,而不是规则1
答案 0 :(得分:1)
如果我理解正确,您需要2条规则。将根目录重定向到您的/ d / categories,然后让PHP文件处理该规则。服务器无法发送尚未请求的URI请求。如何知道用户是否在没有告知的情况下转到root / d / categories?它必须首先重定向,或者您需要假设如果REQUEST_URI
为空,则它们会请求您的主域名。
试试这些规则
RewriteRule ^/?$ /d/categories [R=301,L]
RewriteRule ^/?d/categories$ /categories.php [L]
答案 1 :(得分:0)
试试这个:
RewriteRule ^/$ /d/categories [L, R=301]
答案 2 :(得分:0)
[L]
代表"最后"。
所以你需要在第一个声明中摆脱它:
RewriteRule ^/d/categories$ /categories.php
RewriteRule ^/$ /d/categories [L]