我有.htaccess
我希望301 redirect
。所以当我在.htaccess
中添加301重定向代码时,它工作正常但我无法登录到我的后端。但是如果我删除了这个代码它工作正常。我只是希望它在前端工作,但现在因为这个代码我无法登录到后端。
这是CODE
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]
现在我想要if else条件或某些东西可以帮助我解决这个错误,这个错误仅适用于我的开放式购物车网站的前端,而管理员仍然没有重定向。
答案 0 :(得分:0)
始终在我的所有代码前加RewriteEngine On
。如果不是 admin / * 区域,这些指令会告诉RewriteRule
:
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{REQUEST_URI} !^admin/
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
此代码必须排除所有 admin / * 和 *。(ico | gif | jpg | jpeg | png | js | css)网址:
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 重定向到 www 网址,但不要忘记添加一些www.
在您的“config.php”管理地图:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
在检查之前,请务必清除浏览器缓存或使用其他缓存,因为一旦浏览器被永久重定向到[R=301]
到错误的地址,如果您继续更改不稳定的规则,您的浏览器仍将是重定向到旧地址,因为您的浏览器仍在缓存它。