nginx 子域重写 [英] nginx subdomain rewrite

查看:26
本文介绍了nginx 子域重写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一个 nginx 重写规则来重写:

http://some-keyword.example.comwww.example.com/keyword.php?keyword=$some-keyword

虽然前面没有www的域仍然重写为www.example.com并且www不被当作关键字.>

请你帮我解决这个问题,这两个规则怎么写?

解决方案

如果你的意思是重定向,那么:

服务器{server_name ~^(.*).example.com$ ;重写 ^ http://www.example.com/keyword.php?keyword=$1 重定向;}

重写的情况下,那么简单地做

服务器{server_name example.com ~^(.*).example.com$ ;重写 ^/keyword.php?keyword=$1 break;# 位置/keyword.php {# ....# }}

I need a nginx rewrite rule to rewrite from:

http://some-keyword.example.com to www.example.com/keyword.php?keyword=$some-keyword

while domain without www in front still rewrites to www.example.com and www isn't taken as a keyword.

Please could you help me to solve this problem, how to write these two rules?

解决方案

If you meant redirect, then:

server {
  server_name ~^(.*).example.com$ ;

  rewrite ^ http://www.example.com/keyword.php?keyword=$1 redirect;
}

In the case of rewrite then simply do

server {
  server_name example.com ~^(.*).example.com$ ;

  rewrite ^ /keyword.php?keyword=$1 break;

#  location /keyword.php {
#    ....
#  }
}

这篇关于nginx 子域重写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆