流星客户端无法访问已编译的生产文件

时间:2018-07-17 15:02:00

标签: javascript reactjs nginx meteor deployment

我正在尝试在我的debian服务器上部署流星服务器。 我正在使用nginx并永远运行捆绑的流星应用程序。 (我遵循以下教程:https://medium.com/startup-founder-panel/deploying-a-meteor-app-with-nginx-from-scratch-1332b32e99a5

它适用于服务器部分(我正在连接一个React-native应用程序,并且工作正常),但不适用于React Web客户端部分:

它说它无法加载js和css文件,就像它们无法从客户端访问一样,尽管它们实际上在我的Linux服务器中的捆绑文件夹中。

这是什么错误:

GET http://example.com/ea63eb5bb7607b3ce74dca13734da44296043bb9.css?meteor_css_resource=true 404 (Not Found) GET http://example.com/051b222361019ff9f7996039dc35fb4902c12405.js?meteor_js_resource=true 404 (Not Found)

以下是index.html包含的内容: enter image description here

以下是用于构建/清除流星的脚本:

meteor npm install
npm prune --production

rm -rf ~/bundle #Remove the previous bundle
rm -rf ~/portal

meteor --allow-superuser build --directory ~

cd ~/bundle/programs/server #Enter the bundle
npm install

mv ~/bundle ~/portal

mkdir ~/logs

# Use forever to start the Node server
export PORT=8080
export MONGO_URL='mongodb+srv://user:password@url'
export ROOT_URL='http://example.com'
export METEOR_SETTINGS='{ <fiew settings> }'
#export MAIL_URL='smtp://user:password@mailhost:port/'
cd ~/portal
forever stop main.js
forever start -a -l ~/logs/forever.log -o ~/logs/portal.out -e ~/logs/portal.err main.js

这是流星应用程序的我的nginx配置:

map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
}
#HTTP
server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        location = /favicon.ico {
                root /root/portal/programs/web.browser/app;
                access_log off;
        }

        location ~* "^/[a-z0-9]{40}\.(css|js).*$" {
                gzip_static on;
                root /root/portal/programs/web.brower;
                access_log off;
        }

        location ~"^/packages" {
                root /root/portal/programs/web.browser;
                access_log off;
        }

        # pass requests to Meteor
        location / {
                proxy_pass http://127.0.0.1:8080;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade; #for websockets
                proxy_set_header Connection $connection_upgrade;
                proxy_set_header X-Forwarded-For $remote_addr;
                proxy_set_header Host $host;
        }
}

我知道我丢失了一些东西,因此客户端可以看到两个css和js文件,但是经过一天的尝试,我找不到任何地方。

非常感谢能解锁我的人!

0 个答案:

没有答案