概述
#coding=utf-8
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '
Hello World!
'if __name__ == '__main__':
app.run(host='0.0.0.0',port=8080)
(5)测试脚本,让我们执行我们刚创建的脚本,在/var/www目录下执行:python hello.py
注意:因为80端口已被Nginx使用,这里我使用8080端口。
现在应用是由Flask内置的web服务托管的,对于开发和调试这确实是个不错的工具,但不推荐在生产环境中使用。让我们配置Nginx来挑起这个重担吧。
(6)配置Nginx
直接替换掉,/etc/nginx/sites-enabled/目录下的,default文件
创建新的default文件:
server {
listen 80; //监听80端口
server_name localhost;
charset utf-8;
client_max_body_size 75M;
location / { try_files $uri @yourapplication; }
location @yourapplication {
include uwsgi_params;
uwsgi_pass unix:/var/www/demoapp_uwsgi.sock; //目前没有,随后配置该文件
}
}
用新建的default文件替换掉原来/etc/nginx/sites-enabled/目录下的,default文件后,重启服务:
sudo/etc/init.d/nginx restart
(7)访问服务器的公共ip地址,你会看到一个错误:
别担心,这个错误是正常的,它代表Nginx已经使用了我们新创建的配置文件,但在链接到我们的Python应用网关uWSGI时遇到了问题。到uWSGI的链接在Nginx配置文件的第10行定义:
uwsgi_pass unix:/var/www/demoapp/demoapp_uwsgi.sock;
这代表Nginx和uWSGI之间的链接是通过一个socket文件,这个文件位于/var/www/demoapp/demoapp_uwsgi.sock。因为我们还没有配置uWSGI,所以这个文件还不存在,因此Nginx返回“bad gateway”错误,让我们马上修正它吧。
(8)配置uWSGI:在/var/www目录下创建一个文件:demoapp_uwsgi.ini:
[uwsgi]
#application's base folder
base = /var/www
#python module to import
app = hello
module = %(app)
home = %(base)/venv
pythonpath = %(base)
#socket file's location
socket = /var/www/%n.sock
#permissions for the socket file
chmod-socket = 666
#the variable that holds a flask application inside the module imported at line #6
callable = app
#location of log files
logto = /var/log/uwsgi/%n.log
创建一个新文件夹存放uWSGI日志,更改文件夹的所有权:
sudo mkdir-p/var/log/uwsgi
sudo chown-Rubuntu:ubuntu/var/log/uwsgi
(9)在/var/www目录下执行uWSGI,用新创建的配置文件作为参数:
uwsgi--ini/var/www/demoapp_uwsgi.ini
接下来访问你的服务器,现在Nginx可以连接到uWSGI进程了:
我们现在基本完成了,唯一剩下的事情是配置uWSGI在后台运行;
到目前为止,/var/www下的文件结构如下:
4.现在我们让它在后台运行,要使其随同服务器启动并作为后台服务运行才是运营环境的实际所需要。因此接下来我们需要安装另一个工具来引导 uwsgi 。
最后
以上就是眯眯眼雨为你收集整理的python怎么启动80端口_2017.07.14 Flask使用80端口服务,Nginx+uWSGIHello World!的全部内容,希望文章能够帮你解决python怎么启动80端口_2017.07.14 Flask使用80端口服务,Nginx+uWSGIHello World!所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复