nginx设置301跳转

在server段域名下设置:

if ( $host = ‘xxxx.com‘ ) {        
     rewrite ^/(.*)$ http://www.xxxx.com/$1 permanent; 
}

permanent – 返回永久重定向的HTTP状态301

这里要注意的是,nginx语法检测特别严格,if和后面括号以及变量等号这些元素都要有空格。

如果没有空格的话会报[emerg] unknown directive “if($host!=”这样的错误。

检查配置是否正确

/usr/local/nginx/sbin/nginx -t

提示:

the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful

说明配置文件无错误

/usr/local/nginx/sbin/nginx -s reload

重启nginx即可。

时间: 2024-10-09 03:30:54

nginx设置301跳转的相关文章

如何编程方式设置301跳转?

我们知道IIS的301设置非常的简单,不懂得可以去百度下. 编程方式使用下面的代码 答案: /// <summary> /// 设置301跳转 /// </summary> /// <param name="Url">要跳转的URL</param> public static void SetURL301(string Url) { System.Web.HttpContext.Current.Response.Clear(); Syst

怎么设置301跳转

欢迎来到 大绩绩大博客 网站设置301跳转的方法 第一 当然是解析 这个绩不用我来说来吧 第二 在网站根目录,找到".htaccess"文件.如果文件不存在,用记事本新建一个重命名为 .htaccess 第三 在".htaccess"文件中添加以下代码: RewriteEngine On RewriteCond %{HTTP_HOST} ^xykte.cn$ [NC]RewriteRule ^(.*)$ http://www.xykte.cn/$1 [L,R=301

使用 Nginx 实现 301 跳转至 https 的根域名

基于 SEO 和安全性的考量,需要进行 301 跳转,以下使用 Nginx 作通用处理 实现结果 需要将以下地址都统一跳转到 https 的根域名 https://chanvinxiao.com http://chanvinxiao.com (不带 www 的 http) http://www.chanvinxiao.com (带 www 的 http) https://www.chanvinxiao.com (带 www 的 https) 301 与 302 的区别 301 是永久重定向,30

.htaccess设置301跳转及常用技巧整理

在虚拟主机环境中,基本上都是Apache环境.Apache的伪静态的设置,都是在网站根目录设置.htaccess文件,在.htaccess文件中无论是伪静态, 还是301跳转,甚至是防盗链和禁止某个IP的访问都可以很简单的设置. 关于.htaccess文件的设置和实际应用是相当广泛的,很多功能都可以利用这个小小的文件实现,只不过我们普通用户使用的并不多而已,比如我们常用的301跳转就医带WWW的二级域名跳向不带WWW的顶级域名, 或者一防盗链,或是禁止IP等.这篇文章我们就介绍几种,.htacc

nginx rewrite 301 跳转 post 请求失效问题解决

upstream gaogd{     server 118.8.8.8:80 weight=2; } server {         listen       80;         server_name  www.gaogd.com;         client_max_body_size 20m;         proxy_connect_timeout 600;         proxy_read_timeout 500;         proxy_send_timeout 

nginx 301跳转https后post请求失效问题解决

app本地请求是http端口,后来升级https强制301跳转,设置如下 server { listen 80; server name www.XXX.com; rewrite ^/(.*)$ https://www.XXX.com/$1 permanent; } 问题描述及原因 强制把http请求跳转到https,结果发现App有部分的功能不能使用,因为App一共设置了4种请求方式,分别是GET,POST,DELETE和OPTIONS方式,设置301跳转后所有的请求方法都变成了GET方式,导

Apache环境利用.htaccess文件设置域名301跳转(不带www跳转到带www)

相信很多站长朋友都遇见过这样的问题,即带www的域名与不带www的域名同时都被收录,但域名权重情况差距很大.这问题主要是由于搜索引擎把这两个域名当做两个不同网站看待,导致一个域名被判定是镜像网站造成的.毫无疑问,不管是带www还是不带www,唯一域名能够给你的网站带来更多的好处.这样无论是用户还是搜索引擎,都会记住你网站的唯一域名,也不会造成搜索引擎的误判而导致惩罚.下面本文就来介绍一下Apache环境下利用.htaccess文件设置301跳转,强制用户或搜索引擎重定向到唯一域名. #301重定

phpcms9添加301跳转

在做301跳转时遇到了"错误 310 (net::ERR_TOO_MANY_REDIRECTS):重定向过多."的问题,小编在这里把处理方法简单给大家写出来希望可以帮助到大家,另外小编也把phpcms v9 设置301跳转的两种方面分别给大家介绍一下. phpcms v9 301跳转设置方法一: 仅支持Apache服务器设置 在根目录下找到.htaccess文件,并将以下代码写入进去,保存上传即设置成功,如下图 代码如下,直接复制后,更改域名即可 RewriteEngine on Re

Nginx 301跳转设置方法

下面示例将www.example.com跳转到example.com,如果你需要跳转到www域名,相应修改一下下面代码即可.Nginx 301跳转设置其实很简单,首先打开站点.conf配置文件,文件路径一般是:/usr/local/nginx/conf/vhost/,然后下载本地或者使用vi修改都行. 找到server代码段,如下相应修改即可: server { listen 80; server_name www.example.com example.com; if ($host ~* ww