【问题标题】:Using nginx to rewrite url to subdomain, make it accessible through both使用 nginx 将 url 重写为子域,使其可以通过两者访问
【发布时间】:2016-01-06 02:47:31
【问题描述】:

基本上我有一个包罗万象的服务器块,比如*.example.com。我希望somename.comsomename.example.com 都可以工作(即somename.com/whateversomename.example.com/whatever 通过相同的服务器块并导致相同的结果)所以没有重定向。可能有几个 url 需要与不同的子域匹配,所以 map 可能是最好的方法吗?我不确定,不胜感激任何关于此事的指导!

编辑:只有一个根处理所有事情(并且应用程序使用子域作为重要输入),但它需要一个子域,这就是重写域以便有一个子域如此重要的原因。

【问题讨论】:

标签: nginx


【解决方案1】:

地图是个好主意,但您可能不需要它。如果您采用somename 是工作目录名称的约定,则可以使用命名捕获作为变量根。以下正则表达式server_name 指令应匹配abc.example.comabc.com

server {
    server_name  ~^(?<somename>[^\.]+)(\.example)?\.com$;
    root /var/www/$somename;
}

【讨论】:

  • 可悲的是,只有一个根可以处理所有事情,但它需要一个子域,这就是重写域以便有一个子域如此重要的原因。
猜你喜欢
  • 1970-01-01
  • 2012-03-05
  • 1970-01-01
  • 1970-01-01
  • 2017-11-13
  • 1970-01-01
  • 1970-01-01
  • 2019-02-07
  • 2016-08-19
相关资源
最近更新 更多