我的.htaccess文件中有这个代码:
RewriteEngine on
RewriteBase /testsite/
RewriteRule ^admin/(.*) administrator/$1
RewriteCond %{THE_REQUEST} ^GET\ /^administrator/
RewriteRule ^administrator/(.*) admin/$1 [L,R=301]
工作
我的实际网址是:http://localhost/mysite/administrator/
当我输入http://localhost/mysite/admin
时,它正在检索正确的页面。
失败
当我尝试使用http://localhost/mysite/administrator/
请求页面时,它应该重写http://localhost/mysite/admin
,但无效。
似乎重定向工作正常,但重写不是。
对此有何帮助?
答案 0 :(得分:0)
RewriteEngine on
RewriteBase /mysite/
RewriteRule ^administrator /admin [L,R=301]
答案 1 :(得分:0)
您的错误是您的^
中有一个迷路RewriteCond
与“管理员”之前的THE_REQUEST匹配:
RewriteCond %{THE_REQUEST} ^GET\ /^administrator/
要:
RewriteCond %{THE_REQUEST} ^GET\ /administrator/