Nginx 服务器匹配过多 URL

Nginx 服务器匹配过多 URL

我有一个域名example.com和一个“替代”的some-example.com。我试图使用 nginx 中的简单服务器声明将流量从 引导some-example.com到,如下所示:example.com

server {
    listen 80;
    server_name some-example.com;
    rewrite ^/(.*) http://example.com/$1 permanent;
}

我不是 100% 确定这是否是正确的规则,但是我在服务器上有另一个虚拟主机,这不是问题所在,但有必要了解我遇到的问题。

server {
    listen      8745;
    server_name localhost;
    <other stuff goes here>
}

命中<my server IP>:8745将转到该虚拟主机,其工作方式与预期一致。但是我还有另一个虚拟主机,如下所示:

server {
    listen      8746;
    server_name localhost;
    <other stuff goes here>
}

但是我的所有请求都<my server IP>:8746命中了example.com。我……很困惑,我不太了解 nginx,所以如果能帮助我了解为什么会发生这种情况,我将不胜感激。我在开始时提到了这条规则,因为我认为它与此有关。如果需要更多信息,我可以提供。

答案1

事实证明这不是 nginx 问题。我可能应该注意到<my server IP>:8746运行 Wordpress 安装;Wordpress 有一个选项集(在表中wp_options,行option_id对我来说有 2 个,而option_namesiteurl<some domain>.com,我将其更改为<some domain>.com:8746并且它工作正常。

相关内容