Nginx中配置所有子域名重定向Redirect到www
2013-04-13 10:29
295 查看
Apache 配置是这样的:
#.htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.yourdomain\.com
RewriteRule (.*) http://www.yourdomain.com$1 [R=301,L]
Nginx 的配置:
# /etc/nginx/nginx.conf
if ($http_host !~ “^www\.yourdomain\.com$”) {
rewrite ^(.*) http://www.youdomain.com$1 permanent;
}
//PS:这里提醒一下 非原作者加注(虽是小细节问题但对于nginx新人来说也是不知道的,所以特此在说一下,以防不清楚的同学会忽视的,平时大家写程序if 后跟的括号之间都不会有空格,但在nginx的规则中是不行的,会报错的)上面的 小括号 两边 要与 if 和左大括号 之间要有空格 不然 nginx 会提示 unknown directive
Nginx的 Rewrite Flags
:
last – 基本上都用这个Flag。
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302
permanent – 返回永久重定向的HTTP状态301
转载注明:转自Nginx 中文网
#.htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.yourdomain\.com
RewriteRule (.*) http://www.yourdomain.com$1 [R=301,L]
Nginx 的配置:
# /etc/nginx/nginx.conf
if ($http_host !~ “^www\.yourdomain\.com$”) {
rewrite ^(.*) http://www.youdomain.com$1 permanent;
}
//PS:这里提醒一下 非原作者加注(虽是小细节问题但对于nginx新人来说也是不知道的,所以特此在说一下,以防不清楚的同学会忽视的,平时大家写程序if 后跟的括号之间都不会有空格,但在nginx的规则中是不行的,会报错的)上面的 小括号 两边 要与 if 和左大括号 之间要有空格 不然 nginx 会提示 unknown directive
Nginx的 Rewrite Flags
:
last – 基本上都用这个Flag。
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302
permanent – 返回永久重定向的HTTP状态301
转载注明:转自Nginx 中文网
相关文章推荐
- Nginx中配置所有子域名重定向Redirect到www
- Nginx 重定向所有子域名到www
- 配置nginx使得主域名301重定向到www子域名
- Nginx子域名配置
- nginx 配置例子 (重定向和过滤)
- Nginx 301 重定向实现不带www跳转到www
- nginx的port_in_redirect配置
- nginx 配置http请求重定向至https
- centos 7 上配置SELinux允许nginx指定/home/www作为网站根目录
- 配置nginx服务器 —— Nginx添加多个二级子域名
- nginx配置中proxy_redirect的作用(转)
- Nginx配置二级子域名
- nginx 常见参数以及重定向参数配置
- 如何在CentOS 7上使用Nginx将www重定向到非www
- nginx 配置web 虚拟文件夹 而且codeIgniter,thinkphp 重定向url 地址
- 动态结果配置:struts.xml中,<result>属性的type配置之redirectAction(请求重定向到指定的Action)
- Nginx配置二级子域名
- nginx 域名跳转 Nginx跳转自动到带www域名规则配置、nginx多域名向主域名跳转
- nginx配置中proxy_redirect的作用(转)
- Nginx配置子域名