即时安装django,
wsgi的测试没问题,但是当我将我的默认文件指向django测试时,它无法正常工作,
这是可行的测试:
默认:/etc/apache2/sites-available/default
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/www
<Directory /var/www/documents>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /home/ubuntu/djangoProj/micopiloto/application.wsgi
<Directory /home/ubuntu/djangoProj/mysitio/wsgi_handler.py>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
application.wsgi :: ~/djangoProj/micopiloto
import os
import sys
sys.path.append('/srv/www/cucus/application')
os.environ['PYTHON_EGG_CACHE'] = '/srv/www/cucus/.python-egg'
def application(environ,
start_response):
status = '200 OK'
output = 'Hello World!MK SS9 tkt kkk'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
但如果我将默认值更改为指向application_sa.wsgi
django测试,
它不起作用:(
application_sa.wsgi
import os, sys
sys.path.append('/home/ubuntu/djangoProj/micopiloto')
os.environ['DJANGO_SETTINGS_MODULE'] = 'micopiloto.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
每当我将wsgi更改为test,
时,我都会重启apache服务器所以我错过了什么?
非常感谢!
答案 0 :(得分:1)
尝试将您的apache配置更改为以下内容:
AddHandler wsgi-script .wsgi
WSGISocketPrefix /var/run/wsgi
WSGIRestrictEmbedded On
<VirtualHost *:80>
ServerName www.mydomain.com
WSGIDaemonProcess myprocess processes=2 threads=15
WSGIProcessGroup myprocess
WSGIScriptAlias / /home/ubuntu/djangoProj/micopiloto/application_sa.wsgi
</VirtualHost>
然后将项目的根文件夹添加到sys.path以及application_sa.wsgi:
sys.path.append('/home/ubuntu/djangoProj')
sys.path.append('/home/ubuntu/djangoProj/micopiloto')