cod*_*ojo 3 python mod-wsgi flask python-3.x
我正在尝试在Ubuntu 16服务器(Apache2)上部署Flask项目.在这个项目中,我使用的是Python3库.所以我想将Flask设置为在服务器上使用Python 3.但我真的很难受.这是我在做的事情:
sudo apt-get install apache2
sudo apt-get update
sudo apt-get install libapache2-mod-wsgi-py3 # I think that is how you install wsgi for python3
sudo apt-get install python-flask
sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud)
我的项目conf: /etc/apache2/sites-available/project.conf
<VirtualHost *:80>
ServerName 52.25.54.241 #my IP
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/FlaskApps/FlaskApps.wsgi
<Directory /var/www/FlaskApps/project/>
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/FlaskApps/project/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
最后: /var/www/FlaskApps/FlaskApps.wsgi
#! /usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApps/project/")
# home points to the home.py file
from home import app as application
application.secret_key = "somesecretsessionkey"
Run Code Online (Sandbox Code Playgroud)
注意: 当我像这样安装wsgi时:
sudo apt-get install libapache2-mod-wsgi
Run Code Online (Sandbox Code Playgroud)
它工作,但它使用python2.当我安装wsgi 3.它不起作用,它说没有名为flask的模块.那么如何设置flask以默认使用python3?
我读到了这个问题:让Flask使用Python3(Apache/mod_wsgi), 但它对我没有帮助.我不清楚,因为他们正在使用virtualenv.