任何人都可以给我一个明确的说明,在Ubuntu for Python 3上安装mod_wsgi吗?
我确实使用Python3成功地获得了Flask和mod_wsgi,并且在短时间内感到高兴.
...直到我查看Apache的日志并意识到我遇到了这个问题:https://askubuntu.com/questions/569550/assertionerror-using-apache2-and-libapache2-mod-wsgi-py3-on- Ubuntu的14-04的Python
apt-get正在安装过时的版本,libapache2-mod-wsgi-py3这会导致Apache日志中的错误. (我应该报告这个,如果是这样的话?)
在链接中,工程师正在使用pip安装更新版本.
有趣的是,他似乎将其安装到虚拟Python3环境中.(这与使用系统有什么不同pip3吗?)
他也使用pip3 install mod_wsgi,但pip3 search mod_wsgi返回:
(编辑:不,他没有,他使用pip而不是pip3.这可能是正确的吗?他的电线是否交叉?是不是要忽略他在py3venv中并简单地使用系统的py2安装的事实?但无论如何,这并不能解决困惑...)
mod_wsgi-metrics - Metrics package for Apache/mod_wsgi.
cykooz.recipe.pastewsgi - Buildout recipe to create paste.deploy entry points for mod_wsgi or uwsgi
mod_wsgi-httpd - Installer for Apache httpd web server.
apachemiddleware - Useful Python middleware for use with mod_wsgi deployments
tranchitella.recipe.wsgi - Buildout recipe to create paste.deploy entry points for mod_wsgi
mod_wsgi …Run Code Online (Sandbox Code Playgroud) 我正在尝试在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/")
# …Run Code Online (Sandbox Code Playgroud)