.htaccess mod#u rewrite-执行两个重定向-如果第一个重定向完成';我不能做第二件事
这是我目前的htaccess文件.htaccess mod#u rewrite-执行两个重定向-如果第一个重定向完成';我不能做第二件事,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,这是我目前的htaccess文件 RewriteEngine On # Only redirect if file dosen't exist. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^admin/(.*) /admin.php RewriteRule ^([^/]) /index.php [L] 我不
RewriteEngine On
# Only redirect if file dosen't exist.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^admin/(.*) /admin.php
RewriteRule ^([^/]) /index.php [L]
我不知道为什么这样不行。我想我终于掌握了mod_rewrite,然后它做了一些完全出乎意料的事情
基本上,如果URL是domain.com/admin/something,那么我希望它重定向到domain.com/admin.php(包括如果它是just/admin)。但是,如果它还有什么问题,我希望它重定向到index.php
你知道如何做到这一点吗
多谢各位
RewriteEngine On
# No redirect, if file or directory exists
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [L]
RewriteRule ^admin/(.*) /admin.php [L]
RewriteRule ^(.*)$ /index.php [L]
我没有测试它。有趣的部分是管理规则后的L
-标志,因为它阻止下一个规则匹配
我更改了
RewriteCond
-语句,因为它们只适用于下一个RewriteRule
,并且(在您的情况下)不影响index.php的规则这将起作用,只需删除第二条重写规则的前导/
。我已编辑了对Clmarkurt评论的回答,以防将来有人遇到此问题