我有.htaccess
,我想要301 redirect
。所以当我在.htaccess
中添加301重定向代码时,它可以正常工作,但我无法登录到我的后端。但如果我删除这个代码,它就可以正常工作。我只是想让它在前端工作,但现在因为这个代码,我无法登录到后端。
这是代码
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]
现在我想要if-else条件或帮助我解决这个错误的东西,这个错误只适用于我的开放式购物车网站的前端,管理员保持原样,没有重定向。
我的所有代码前面总是用RewriteEngine On
。这些指令告诉如果不是管理员/*区域,则继续执行RewriteRule
:
RewriteCond %{HTTP_HOST} !^www'.
RewriteCond %{REQUEST_URI} !^admin/
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
此代码必须排除所有管理员/*和*。(ico|gif|jpg|jpeg|png|js|css)URL:
RewriteCond %{HTTP_HOST} !^www'.
RewriteCond %{REQUEST_URI} !^admin/
RewriteCond %{REQUEST_URI} !'.(ico|gif|jpg|jpeg|png|js|css)$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
无论如何,您仍然可以尝试使用此代码将所有非www重定向到wwwURL,但不要忘记在"config.php"管理映射中添加一些www.
:
RewriteCond %{HTTP_HOST} !^www'.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
在检查之前,请始终清除浏览器缓存或使用其他缓存,因为一旦浏览器被[R=301]
永久重定向到错误的地址,如果你继续更改不稳定的规则,你的浏览器仍将被重定向到旧地址,因为你的浏览器仍然在缓存它。