我尝试在我的免费 AWS 实例上设置 nginx,以便它可以在单个 IP 地址上托管多个域(不确定是否可以管理,但我正在尝试深入研究)。在此过程中,我创建了 dancemilkdance.com 文件,/etc/nginx/sites-available
并且还有默认文件。默认在监听 81 上,dancemilkdance.com 在监听 80 上,正在尝试看看会发生什么,现在它们都在监听 80 上(dancemilkdance.com 现在有 default_server),但它一直将我重定向到端口 81。
每次更改后我都会重新启动服务,同时我也会用它sudo nginx -t
来检查一切是否正确。我会把 nginx 配置放在这里,以便您可以看到它。
注意 1)我不想删除默认文件,而是设法真正找到这个问题的根源
注 2)如果你有一个适用于多个域的解决方案,那就太好了
注 3)哪怕只是暗示也足够了
dancemilkdance.com
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
server_name dancemilkdance.com www.dancemilkdance.com;
access_log /var/log/nginx/dancemilkdance.com.access.log rt_cache;
error_log /var/log/nginx/dancemilkdance.com.error.log;
root /var/www/dancemilkdance.com/htdocs;
index index.php index.html index.htm;
include common/php.conf;
include common/wpcommon.conf;
include common/locations.conf;
include /var/www/dancemilkdance.com/conf/nginx/*.conf;
}
默认
server {
listen 80;
listen [::]:80;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
}
我的域名是(你猜对了)dancemilkdance.com
编辑 1) 我删除了默认设置,并重新启动了实例,解决方案仍然相同。只有当我打开端口 81 时,网站才会正确显示,但默认的 www.dancemilkdance.com (:80) 上网站会变空
编辑 2) 我重新安装了 nxing,从头开始做所有事情,现在一切正常。第 2 阶段是在同一 IP/实例上创建另一个域