搜索
开启辅助访问 切换到宽版

QQ登录

只需一步,快速开始

扫一扫,访问微社区

注册 找回密码
查看: 3433|回复: 0
打印 上一主题 下一主题

opencart不带www跳转到带www网址(301跳转 apache/nginx)

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-22 22:11:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天给客户调试网站,顺便研究了下301跳转。
应用场景,客户输入不带www的域名跳转到带有www域名的网站
系统区分为apache nginx两种web引擎

环境1:linux,apache
在apache配置文件conf中加入以下代码就好(opencart.cn是你网站上域名),网站必须开启伪静态。
  <Directory /home/wwwroot/opencart.cn>
      在这里添加下面代码
   </Directory>

  1. Options +FollowSymLinks
  2. RewriteEngine on
  3. RewriteCond %{HTTP_HOST} ^opencart.cn
  4. RewriteRule ^(.*)$ [url]https://www.opencart.cn/[/url] [R=permanent,L]
复制代码


或者直接修改根目录下的.htaccess文件,在.htaccess中添加如下内容(将opencart.cn换成你自己网站上域名):
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine On
  3. RewriteCond %{HTTP_HOST} ^opencart.cn$ [NC]
  4. RewriteRule ^(.*)$ https://www.opencart.cn/$1 [R=301,L]
  5. </IfModule>
复制代码



环境2:linux,nginx

需要在nginx的config文件设置
如在/usr/local/nginx/conf/vhost下添加 opencart.conf文件,内容如下(将opencart.cn修改成您的真实域名)

  1. location / {
  2.      if ($host != 'www.opencart.cn') {
  3.              rewrite ^/(.*)$ https://www.opencart.cn/$1 permanent;
  4.      }
  5.      try_files $uri @opencart;
  6. }

  7. location @opencart {
  8.      rewrite ^/(.+)$ /index.php?_route_=$1 last;
  9. }

  10.      location /admin/ {
  11.      index index.php;
  12.      }

  13. location ~* (\.(tpl|ini))$ {
  14.        deny all;
  15. }
复制代码


或者在confg文件开头的地方增加
  1. server {
  2.         listen             80;
  3.         server_name  opencart.cn;
  4.        
  5.        if ($host != 'www.opencart.cn'){
  6.                 rewrite ^/(.*)$ https://www.opencart.cn/$1 permanent;
  7.         }   
  8. }
复制代码


重启nginx,就可以生效
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

QQ|手机版|OpenCart - 中文官方网站 ( 蜀ICP备09033774号|人工智能

GMT+8, 2024-5-4 02:49 , Processed in 0.057172 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表