0

我想为rewriteISPconfig 上的子域做一个自定义。当我为此添加下面的代码时,子域被重定向到主域。

样品 #1:

server {
  ...
     if ($http_host = "panel.example.com") {
         rewrite ^(?!/(_SubDomains/Panel|stats|\.well-known/acme-challenge))/(.*)$ /_SubDomains/Panel/$2 last;
         rewrite ^/(.*)/(.*)$ /index.php?cmd=$1&scd=$2? last;
      }
  ...
 }

如果我按照示例 2 进行操作,Nginx 服务器将无法工作。

样本 #2:

server {
...
     if ($http_host = "panel.example.com") {
         rewrite ^(?!/(_SubDomains/Panel|stats|\.well-known/acme-challenge))/(.*)$ /_SubDomains/Panel/$2 last;
         location ~ \.php$ {
                 rewrite ^/(.*)/(.*)$ /index.php?cmd=$1&scd=$2? last;
         }
     }
...
}

如何进行子域特定的重写?

4

1 回答 1

0

您应该为不同的子域创建单独的服务器块:

server {
...
   server_name foo.example.com;
...
}

server {
...
   server_name bar.example.com;
...
}
于 2021-12-25T12:55:54.067 回答