OpenCart - 中文论坛
标题:
opencart不带www跳转到带www网址(301跳转 apache/nginx)
[打印本页]
作者:
sunboy
时间:
2015-4-22 22:11
标题:
opencart不带www跳转到带www网址(301跳转 apache/nginx)
今天给客户调试网站,顺便研究了下301跳转。
应用场景,客户输入不带www的域名跳转到带有www域名的网站
系统区分为apache nginx两种web引擎
环境1:linux,apache
在apache配置文件conf中加入以下代码就好(opencart.cn是你网站上域名),网站必须开启伪静态。
<Directory /home/wwwroot/opencart.cn>
在这里添加下面代码
</Directory>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^opencart.cn
RewriteRule ^(.*)$ [url]https://www.opencart.cn/[/url] [R=permanent,L]
复制代码
或者直接修改根目录下的.htaccess文件,在.htaccess中添加如下内容(将opencart.cn换成你自己网站上域名):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^opencart.cn$ [NC]
RewriteRule ^(.*)$ https://www.opencart.cn/$1 [R=301,L]
</IfModule>
复制代码
环境2:linux,nginx
需要在nginx的config文件设置
如在/usr/local/nginx/conf/vhost下添加 opencart.conf文件,内容如下(将opencart.cn修改成您的真实域名)
location / {
if ($host != 'www.opencart.cn') {
rewrite ^/(.*)$ https://www.opencart.cn/$1 permanent;
}
try_files $uri @opencart;
}
location @opencart {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
location /admin/ {
index index.php;
}
location ~* (\.(tpl|ini))$ {
deny all;
}
复制代码
或者在confg文件开头的地方增加
server {
listen 80;
server_name opencart.cn;
if ($host != 'www.opencart.cn'){
rewrite ^/(.*)$ https://www.opencart.cn/$1 permanent;
}
}
复制代码
重启nginx,就可以生效
欢迎光临 OpenCart - 中文论坛 (https://bbs.opencart.cn/)
Powered by Discuz! X3.2