0

質問
ubuntu 14.04 lts os (nginx-gunicorn) でフラスコアプリをホストして、他のユーザー (Windows マシン) が自分のコンピューター名を使用してアクセスできるようにするにはどうすればよいですか? Windows ネットワークに接続しており、コンピューター名は「argonaut」です。

現在
、私はアプリにアクセスできますが、他のコンピューターにはアクセスできません。ただし、フラスコ開発 Web サーバーを使用して Windows コンピューターからアプリを実行すると、他のコンピューターがアプリにアクセスできます。違いはなんですか?


繰り返しますが、ubuntuでホストする場合、
アクセスできますが、他の人は使用していません

http://argonaut:8000 

Windowsマシンでホストしている場合
、ネットワーク内の誰もが(望ましいアクセスですが、Windowsを使用したくありません)を使用してサイトにアクセスできます

http://argonaut:8000 

どこから調査を開始すればよいかわかりません。

私のフラスコ run.py

from flask import Flask
from werkzeug.contrib.fixers import ProxyFix
app = Flask(__name__)

@app.route('/')
def hello():
    return "Hellooxx world!"

app.wsgi_app = ProxyFix(app.wsgi_app)

if __name__ == '__main__':
    app.run(host='0.0.0.0')

誰でもアクセスできるように、host='0.0.0.0' を設定しました。

私が走るとき

    chet@argonaut:~$ netstat -tupln | grep ':8000'
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp        0      0 127.0.0.1:8000          0.0.0.0:*               LISTEN      3216/python  

nginx構成

worker_processes 1;

events {

    worker_connections 1024;

}

http {

    sendfile on;

    gzip              on;
    gzip_http_version 1.0;
    gzip_proxied      any;
    gzip_min_length   500;
    gzip_disable      "MSIE [1-6]\.";
    gzip_types        text/plain text/xml text/css
                      text/comma-separated-values
                      text/javascript
                      application/x-javascript
                      application/atom+xml;

    # Configuration containing list of application servers
    upstream app_servers {

        server 0.0.0.0:8080;
        # server 127.0.0.1:8081;
        # ..
        # .

    }

    # Configuration for Nginx
    server {

        # Running port
        listen 80;

        # Settings to serve static files 
        location ^~ /static/  {

            # Example:
            # root /full/path/to/application/static/file/dir;
            root /app/static/;

        }

        # Serve a static file (ex. favico)
        # outside /static directory
        location = /favico.ico  {

            root /app/favico.ico;

        }

        # Proxy connections to the application servers
        # app_servers
        location / {

            proxy_pass         http://app_servers;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;

        }
    }
}

ありがとうございました

4

0 に答える 0