我使用了一堆Ubuntu16.04+Apache2.4+ Django 1.10 + Python3.5 + wsgi + virtualenv。
apache配置命令如下
WSGIDaemonProcess myproject python-path/home/admin/web/domen.com/private/myprojectenv:/home/admin/web/domen.com/private/myprojectenv/lib/python3.5/site-packages
WSGIProcessGroup myproject
WSGIScriptAlias / /home/admin/web/domen.com/private/myproject/wsgi.pywsgi.py标准
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
application = get_wsgi_application()重新安装所有东西。胖子,你看到错误500了。日志:from django.core.wsgi import get_wsgi_application ImportError: No module named 'django'
发布于 2017-01-22 18:17:06
我管理着剃须刀--下面的一个问题将描述它的解决方案。
我的系统UNUNTU16.04,Vesta面板0.9.8-17 (包括所有失败的nginx + apache)。
因为我需要python3,我将描述一下,如果您除了安装了类似的容器之外,没有其他东西可以使用pothon2。
安装这个包,环境本身就是从这里开始的,wsgi on-ubuntu-16-04
发生了什么变化:wsgi.py
import os, sys
sys.path.append ( '/ home / admin / web / domen.com / private') # The path to the folder with Django project
from django.core.wsgi import get_wsgi_application
os.environ.setdefault ( "DJANGO_SETTINGS_MODULE", "myproject.settings")
application = get_wsgi_application ()西区的Apache配置:
<VirtualHost 172.11.11.11:8080>
ServerName domen.com
ServerAlias www.domen.com
ServerAdmin info@domen.com
DocumentRoot /home/admin/web/domen.com/public_html
ScriptAlias / cgi-bin / /home/admin/web/domen.com/cgi-bin/
Alias / vstats / /home/admin/web/domen.com/stats/
Alias / error / /home/admin/web/domen.com/document_errors/
#SuexecUserGroup Admin admin
CustomLog /var/log/apache2/domains/domen.com.bytes bytes
CustomLog /var/log/apache2/domains/domen.com.log combined
ErrorLog /var/log/apache2/domains/domen.com.error.log
<Directory /home/admin/web/domen.com/public_html>
AllowOverride All
Options + Includes -Indexes + ExecCGI
php_admin_value open_basedir /home/admin/web/domen.com/public_html:/home/admin/tmp
php_admin_value upload_tmp_dir / home / admin / tmp
php_admin_value session.save_path / home / admin / tmp
</ Directory>
<Directory /home/admin/web/domen.com/stats>
AllowOverride All
</ Directory>
<IfModule mod_ruid2.c>
RMode config
RGroups www-data
</ IfModule>
<IfModule itk.c>
AssignUserID admin admin
</ IfModule>
Alias / static /home/admin/web/domen.com/private/static
<Directory /home/admin/web/domen.com/private/static>
Require all granted
</ Directory>
<Directory /home/admin/web/domen.com/private/myproject>
<Files wsgi.py>
Require all granted
</ Files>
</ Directory>
WSGIScriptAlias / /home/admin/web/domen.com/private/myproject/wsgi.py
WSGIDaemonProcess myproject user = admin group = admin python-path = / home / admin / web / domen.com / private / env / lib / python3.5 / site-packages
WSGIProcessGroup myproject
IncludeOptional /home/admin/conf/web/apache2domen.com.conf*
</ VirtualHost>我对所有的管理员都很满意。在WSGIDaemonProcess中,必须指定Ucero和Korhogo组,处理方式不同,这是访问数据库的一个问题。
最初,块<IfModule mod_ruid2.c>如下所示:
<IfModule mod_ruid2.c>
RMode config
RUidGid admin admin
RGroups www-data
</ IfModule>但是我删除了vnem RUidGid管理组管理,因为它阻止了启动并给出了一个503错误(如果有人知道这样的特性,那么在注释中写)
此服务器已准备好运行。
发布于 2017-01-21 11:18:26
我也遇到了同样的问题,并解决了安装mod_wsgi的propper版本,以便与特定的python版本一起使用(我有3.4)。查看这里的信息,在modwsgi读文档中
发布于 2017-01-21 11:50:13
如果要使用编译后的版本,则需要根据要在其上运行的mod_wsgi版本对其进行编译。指向您希望与--with-python参数一起使用的Python版本。下面是一个例子。
wget "https://github.com/GrahamDumpleton/mod_wsgi/archive/4.x.y.tar.gz"
tar -xzf '4.x.y.tar.gz'
cd ./mod_wsgi-4.x.y
./configure --with-python=/usr/local/bin/python3.5
make
make install祝好运!
https://stackoverflow.com/questions/41777595
复制相似问题