nginx域名重定向301

发现yneit.com域名被百度收录了,点击浏览显示的是nginx欢迎页,所以需要对yneit.com的访问重定向到www.yneit.com.下面是配置文件conf的修改方法:

[shell]server_name yneit.com www.yneit.com;
if ( $host ~* yneit.com )
{
rewrite ^/(.*)$ http://www.yneit.com/$1 permanent;
}[/shell]

或者

[shell]server_name yneit.com www.yneit.com;
if ( $host != ‘www.yneit.com’ )
{
rewrite ^/(.*)$ http://www.yneit.com/$1 permanent;
}[/shell]

这里会出现有些问题,如果你喜欢格式化,喜欢去掉表达式里面的空格的话,nginx: [emerg] unknown directive “if($host”该问题的原因就是因为if $host 与( 之间需要空格隔开。
注意事项:
1. 上述配置文件的if语句与括号必须以一个空格隔开,否则Nginx会报nginx: [emerg] unknown directive “if($host” in…错误。

2. Nginx的条件判断不等于是!=,等于是=,注意这里的等于只有一个等于号,如果写成==,则Nginx会报nginx: [emerg] unexpected “==” in condition in…错误。

3. 301永久转向配置成功后,浏览器可能会有记忆效应,比如说IE。所以一旦配置并利用浏览器访问过页面,那么你更改了301转向配置后,这个页面可能依旧是上次的转向,建议清除浏览器缓存,或者尝试访问其他页面,也可以在url的?问号后面加上一些随机的参数,避免浏览器的缓存记忆效应。

完成以上配置之后需要重新启动nginx

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据