当前位置:  操作系统/服务器>linux

nginx中域名、目录的301重定向配置示例

    来源: 互联网  发布时间:2014-08-25

    本文导语:  301重定向不陌生, 有时候有需求把某目录整个重定向到一个二级域名,或者不带www的顶级域名请求全部重定向到带www的二级域名.如果是Apache,需要配置.htaccess,nginx不支持,需要在配置文件里面使用rewrite指令来实现。 顶级域名...

301重定向不陌生, 有时候有需求把某目录整个重定向到一个二级域名,或者不带www的顶级域名请求全部重定向到带www的二级域名.如果是Apache,需要配置.htaccess,nginx不支持,需要在配置文件里面使用rewrite指令来实现。

顶级域名重定向到www

代码如下:

server {
 server_name ;
 rewrite ^/(.*)$ http://www./$1 permanent;
 }

如上配置,所以的请求都会重定向到www.,301重定向对SEO很有帮助.这个配置大家用的最多。

www二级域名重定向到顶级域名

代码如下:

server {
 server_name www.;
 rewrite ^/(.*)$ http://domain.com/$1 permanent;
 }

江湖盛传顶级域名的权重会比www二级域名的权重高,有些seoer会要求运维一定要把www的请求转到顶级域名,和上面的做法相反。

目录重定向

代码如下:

if ( $request_filename ~ nginxjiaocheng/ ) {
 rewrite ^ http://www./nginx/? permanent;
 }

目录跳转新域名
代码如下:

if ( $request_filename ~ nginx/ ) {
 rewrite ^ http://nginx./? permanent;
}

nginx这个栏目太火了,打算专门弄一个域名。

附:域名之间的301跳转和测试方法

一、相同根域名与子域名之间的跳转

第一种情况:访问根域名重定向到www子域名 (Vhost 通常绑定了多个域名,这样做可以精确定位到某个域名,不会造成非本域名跳转到本域名的情况)

server {
    server_name www. ;
    if ($host = '' ) {
        rewrite ^/(.*)$ http://www./$1 permanent;
    }

二、不同域名间的301跳转

第一种情况:访问A站定向到B站

代码如下:
server {
    server_name www.;
    rewrite ^(.*) http://www.$1 permanent;
}

第二种情况:不是访问A站的全部重定向到指定页面

代码如下:
server {
    server_name www.;
    if ($host != '') {
        rewrite ^/(.*)$ http://www./$1 permanent;
    }
}

如果写在第一个server段
使用IP访问时也将被重定向

301重定向状态在线检测工具:http://web-sniffer.net/

返回了这句才算是301重定向成功:

代码如下:
Status: HTTP/1.1 301 Moved Permanently

    
 
 

您可能感兴趣的文章:

  • nginx中用JSON格式记录日志的配置示例
  • nginx支持codeigniter的pathinfo模式url重写配置写法示例
  • 使用python删除nginx缓存文件示例(python文件操作)
  • 国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例
  • Nginx限制搜索引擎爬虫频率、禁止屏蔽网络爬虫配置示例
  • nginx中配置pathinfo模式示例
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • Nginx跨域使用字体文件的配置方法
  • linux/centos源码安装nginx编译配置选项参数介绍
  • linux下怎么配置nginx + tomcat 和 apache + php运行两个网站的环境?
  • nginx服务器下通过fastcgi支持php5详细安装配置步骤
  • nginx使用IPV6的相关配置项介绍
  • PHP+FastCGI+Nginx配置PHP运行环境
  • nginx status状态页配置方法和中文说明
  • nginx关闭favicon.ico、robots.txt日志记录配置
  • nginx中文件下载指定保存文件名的配置方法
  • ngin配置301重定向设置方法和nginx子目录301重定向
  • 在nginx中配置pathinfo模式支持thinkphp的URL重写
  • Linux下Nginx安全证书ssl配置方法
  • Nginx中禁止使用IP访问网站的配置实例
  • nginx将泛解析的匹配域名绑定到子目录配置方法
  • Nginx隐藏index.php和Pathinfo模式配置例子
  • Nginx图片防盗链配置实例
  • 在网关中使用Nginx配置HTTP透明代理案例
  • nginx配置gzip压缩页面
  • 实现Nginx中使用PHP-FPM时记录PHP错误日志的配置方法
  • Nginx中共享session会话配置方法例子
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • nginx 服务器介绍
  • 实时 Nginx 分析和诊断工具 nginx-systemtap-toolkit
  • nginx Windows版相关问题及使用说明
  • Nginx的TFS模块 nginx-tfs
  • nginx最新主线开发版1.5.4发布及下载地址
  • 重启或杀掉Nginx进程后丢失nginx.pid的解决办法
  • nginx最新稳定版1.4.2发布
  • Nginx 令牌模块 nginx-token
  • nginx服务器基本特性及使用技巧
  • Nginx文件上传模块 nginx-upload-module
  • linux/centos下安装nginx(rpm安装和源码安装)详细步骤
  • Nginx 负载均衡模块 nginx-upstream-fair
  • linux/centos安装nginx常见错误及解决办法
  • 懂nginx,帮下忙,使用nginx实现大并发
  • NGINX的流媒体插件 nginx-rtmp-module
  • nginx安装(1) ttlsa教程系列之nginx
  • 重启nginx后丢失nginx.pid的解决方法
  • nginx中使用nginx-http-concat模块合并静态资源文件
  • nginx 截取编译参数
  • linux下为nginx添加jvmroute模块的方法
  • websockify-nginx-module


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3