您好,我正在尝试将非 www 重定向到 www。通常我用这段代码得到它
RewriteCond %{HTTP_HOST} ^example.com
RewriteRule (.*) http://www.example.com/$1 [R=301]
但是我在我的 htaccess 上有这个,所以我遇到了问题。
# SEO URL Settings
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/index.php(.*)$ index.php$2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/*$ index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/find/(.+)$ index.php?_route_=$2 [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^find/(.+)$ index.php?_route_=$1 [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/admin(/*)$ admin/index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/admin(.*)$ admin/$2
我知道我只需要将 www 添加到该规则中(也许)我尝试过但没有运气=(
问题:
我应该得到 www.example.com/user1/ 或 www.example.com/user2/ 我得到 www.example.com/user1/user1/user1/user1/user1/user1/user1/user1/ 错误
它在这种情况下很好用 example.com 到 www.example.com
我也无法登录到管理员 example.com/admin/ 使用 www 重定向到相同的 URL,但我从未登录 =(
解决方案: :::::::::
我加了这个
# REDIRECT HTTP://WWW TO HTTP://.
#RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
它的工作很棒在这里找到了它。:http://forum.opencart.com/viewtopic.php?t=57274
希望任何人都可以告诉我如何反转我刚刚添加的最后一条规则
所以所有页面都有www。