使用nginx将Meteor me app从www重定向到非www

时间:2015-11-16 02:51:40

标签: .htaccess redirect meteor nginx

我在Digital Ocean Droplet上运行了两个Meteor应用程序。使用nginx反向代理。两者都在非www域上成功运行,但在www.my-domain1.com和www.my-domain2.com上只欢迎使用Debian上的nginx!'页面。 我假设它是因为在配置文件中我只使用非www域如下:



server {  
 listen 80;
 server_name my-domain1.com;

 location / {
    proxy_pass http://localhost:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header X-Forwarded-For $remote_addr;
 }
}




和第二个应用程序的类似但不同的域和端口。我尝试使用Digital Ocean tutorial.重定向,但它不起作用,我也应该看到应用程序在www域上工作。

1 个答案:

答案 0 :(得分:2)

当前服务器正在端口80上侦听具有my-domain1.com HOST标头的任何请求。

您首先需要在server_name行添加www.my-domain1.com和www.my-domain2.com:

server_name my-domain1.com my-domain2.com www.my-domain1.com www.my-domain2.com;

然后重启Nginx。虽然有些指南会告诉您在server_name指令中使用* .my-domain1.com * .my-domain2.com;我不这样做,因为在Nginx方面需要更多的工作。一般来说,当您在同一个Nginx服务器中提供更多主机名时,更难调试全部捕获设置。

需要考虑的另一件事是上游服务器主机名。例如,如果您的上游应用程序正在侦听my-domain1.com;您需要这样做,以便所有代理请求都包含此域名;否则上游应用程序将无法按预期提供请求。

您可能需要添加

proxy_set_header Host my-domain1.com;