我正在我的VPS上的端口3001上运行一个流星应用程序,并希望将其转发到端口80.这是我的虚拟主机配置:
server
{
listen 80;
server_name meteor.myDomain.com;
root /home/wwwroot/meteor.myDomain.com/leaderboard;
include typecho.conf;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location /example {
proxy_pass http://127.0.0.1:3001;
proxy_set_header Host $host:80;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
}
access_log off;
}
当我在浏览器中输入“meteor.myDomain.com/example”时,我得到:
看起来我的端口转发成功,但我想知道为什么我得到404请求css和js文件?这两个文件位于/ example / programs / client中。
当我键入“meteor.myDomain.com/example:3001”时,一切正常,所以我认为必须运行我的配置。有人可以帮忙吗?提前谢谢。
答案 0 :(得分:1)
为meteor配置nginx可能很棘手,因为根路径根据请求URL(favicon vs捆绑资产与打包资产)不同而不同。
你的root指令说的是:
/style.css
可在此处找到:/home/wwwroot/meteor.myDomain.com/leaderboard/style.css
显然不对(它实际上在bundle/programs/client
下)。我建议您仔细查看我的question and answer以及示例gist。如果您在此之后有任何问题,我将很乐意回答。