现在我们手里有一个准备发布的项目,那么如何将他上传到你的服务器,并让外网访问呢?
前提:
- 安装了Python环境
apt-get install python-dev
- 安装Flask
pip install flask
- 安装UWSGI
pip install uwsgi
- 安装了Nginx
apt-get install nginx
- 安装了Gunicorn
pip install gunicorn
准备
首先在你的/var/www/
目录下创建一个测试目录,比如/var/www# mkdir test
然后使用chmod
更改此目录的权限chmod 777 /var/www/test
这里讲一下chmod
的规则,因为这里是测试用例,所以为了方便,直接使用777。
Nginx
Ubuntu下的Nginx的目录结构大致如下:
- 所有的配置文件都在
/etc/nginx
下,每个虚拟主机已经安排在了/etc/nginx/sites-available
目录下 - 启动程序文件在
/usr/sbin/nginx
- 日志文件放在了
/var/log/nginx
中,分别是access.log
和error.log
- 在
/etc/init.d/
下创建了启动脚本nginx - 默认的虚拟主机的目录设置在了
/usr/share/nginx/www
启动服务:/etc/init.d/nginx start
,重启服务:/etc/init.d/nginx restart
现在,我们需要进入到Nginx的配置中,改动配置文件。vim /etc/nginx/site-avalidable/default
更改配置文件后重启服务/etc/init.d/nginx restart
,或者service nginx restart
Gunicorn
Gunicorn 绿色独角兽 是一个Python WSGI UNIX的HTTP服务器。这是一个pre-fork worker的模型,从Ruby的独角兽(Unicorn )项目移植。该Gunicorn服务器大致与各种Web框架兼容,只需非常简单的执行,轻量级的资源消耗,以及相当迅速。
此时需要在“准备”步骤中创建的测试目录下放入我们的测试运行项目,我选择的FTP工具是:xftp。我传入了一个简单的用来测试的Python文件wsgi.py
,使用命令/var/www/myflask# vim wsgi.py
预览。
此时在测试目录下键入命令gunicorn -w 4 -b 127.0.0.1:8000 wsgi:app
运行。
此时,访问服务器,可以看到“Hello World”已经可以正常显示了。
点击这里(106.14.220.63)访问(之后地址将被使用为其他应用的入口,可能失效)
欢迎交流指正(•̀ᴗ•́)و ̑̑