微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 用于Meteor部署的Nginx配置

我的问题是如何让Nginx将域名(www.example.com/app)转发到同一台服务器上的流星应用程序. Nginx在端口80上运行,Meteor在同一台机器上的端口4000上运行.

以下是详细信息:我正在尝试使用Nginx在我自己的服务器上托管由meteor制作的应用程序.我似乎无法让Nginx将我的域名转发到端口4000,在那里流星可以拿起它并处理网页.

Nginx代理端口的最新配置是:

server {
    listen 80 default_server;
    listen [::]: 80 default_server ipv6only = on;
    root /usr/share/Nginx/html;
    index index.html index.htm;

    server_name localhost;

    location / {
        try_files $uri $uri / = 404;    
    }

    location /app {
        rewrite ^/app(.*) /$1 break;
        proxy_pass http://127.0.0.1:4000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header X-Forwarded-For $remote_addr;
   }
}

使用此配置时,我访问流星应用程序

www.example.com/app

所有* .js和* .css文件请求都被转发到

www.example.com/xxxxxxxxxxxx.js

相反它应该是

www.example.com/app/xxxxxxxxxxxx.js

有人可以解释我在Nginx配置或Meteor配置中缺少什么来指向我的流星应用程序

www.example.com/app

解决方法:

删除此行:

    rewrite ^/app(.*) /$1 break;

它将www.example.com/app/xxxxxxxxxxxx.js等URL转换回www.example.com/xxxxxxxxxxxx.js

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐