我有一个适用于我的电脑的烧瓶应用程序。 当我在虚拟服务器(CentOs 6.5)上部署它时,我根据文章使用了nginx: https://www.digitalocean.com/community/tutorials/how-to-deploy-flask-web-applications-using-uwsgi-behind-nginx-on-centos-6-4
我不得不更改/etc/nginx/nginx.conf中的端口,因为它与apache端口发生冲突(导致nginx无法启动,因为端口已在使用中)。所以我的nginx.conf是:
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 uwsgicluster {
server 127.0.0.1:8081;
# server 127.0.0.1:8081;
# ..
# .
}
# Configuration for Nginx
server {
# Running port
listen 81;
# Settings to by-pass for static files
location ^~ /static/ {
# Example:
# root /full/path/to/application/static/file/dir;
root /app/static/;
}
# Serve a static file (ex. favico) outside static dir.
location = /favico.ico {
root /app/favico.ico;
}
# Proxying connections to application servers
location / {
include uwsgi_params;
uwsgi_pass uwsgicluster;
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;
}
}
}
我的申请位于12.12.15.16/cgi-bin/My_app下(此处的IP地址为虚拟)。
我使用以下命令行启动应用程序:
env/bin/uwsgi --socket 127.0.0.1:8081 --protocol=http --wsgi-file main.py --callable app
我的问题是:我现在如何通过网络浏览器调用我的应用程序?
感谢您的帮助!
答案 0 :(得分:0)
您的Flask应用正在侦听端口8081,但仅用于本地主机连接(127.0.0.1)。 Nginx正在端口81上侦听连接,并在8081上将它们传送到Flask。因此,从您自己的浏览器中,您想要访问http://your-digital-ocean-ip:81/