2016-06-15 19 views
0

Nginxをポート80で実行すると、私のサイトには常に空白のページが表示されます。ポート8080と私はmypage.com:8080に行く私の流星のアプリケーションを示しています。なぜNginxが80以外のすべてのポートで動作するのかわかりません。Meteor AppとNginx on Port 80

ここは私の設定です。

nginxの流星のAppは

sudo PORT=5000 MONGO_URL=mongodb://user:[email protected]:27017/mypage 
ROOT_URL=http://mypage.de forever start -a -o out.log -e err.log main.js 

netstatの-tulpnが

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 11214/nginx -g daem tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 10853/node

を示して始め

server { 
     listen    *:80 default_server; 

     server_name   mypage.de; 

     access_log   /var/log/nginx/app.dev.access.log; 
     error_log    /var/log/nginx/app.dev.error.log; 

     location/{ 
       proxy_pass http://127.0.0.1:5000; 
       proxy_http_version 1.1; 
       proxy_set_header Upgrade $http_upgrade; 
       proxy_set_header Connection 'upgrade'; 
       proxy_set_header X-Forwarded-For $remote_addr; 
      } 
} 

私はmypage.deが空白のページを表示する前に言ったように...ポート8080でNginxと同じ設定が動作します。私はUbuntuに取り組んでいます。これをどうすれば解決できますか?

+0

あなたのIPアドレスにアクセスしてポート5000を接続してアプリを見ることはできますか? – thatgibbyguy

+0

はい、私はmyip:5000に行くと、私の流星アプリ –

+0

が表示されました。私は単純なHTTPServerを起動するためにsudo python -m SimpleHTTPServer 80をテストしましたが、何も表示されません!私がsudo python -m SimpleHTTPServer 8080をテストしてmypage.de:8080に行ったときに動作します。ポート80のようなものがブロックされているようですが、なぜわかりません –

答えて

0

あなたのIPテーブルがポート80をブロックしているようです。それは、あなたとあなたのサーバーの間のファイアウォールです。

これらは、WebトラフィックのIPテーブルのルールです。ただ、コマンドラインで次のコマンドを実行します。

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT 

私はまた、あなたが唯一の人々がWebポートに行くしたい、それはそれだポート5000を許可するように必要とされていない任意のルールをドロップします。

+0

あなたは正しいと思われますが、ポートがブロックされた理由は見つかりませんでした。だから私はubuntuを再インストールして終了し、今は動作します。 –

+0

うーん、奇妙な。あなたはそれを固定してうれしいです。 IPテーブルが問題であるかどうかを常にテストする良い方法は、IPテーブルをオフにして、アクセスできるかどうかを確認することです。可能であれば、それを元に戻してルールを調整してください。 – gkrizek