[解决] 我做了设置,从runserver替换为apache 。你可以在下面注意到。 Django应用程序不会在apache上运行。你能指导我吗?
mod_wsgi安装时没有任何问题,我可以在运行index.py并使用以下代码时检查它:
def application(environ, start_response):
start_response('200 OK',[('Content-type','text/html')])
return ['<html><body>Hello World!</body></html>']
我有一个基于startproject,startapp,makemigrations,migrate构建的Django默认应用程序,并且在python webserver(runserver)上正常运行。 www.host.com:8000/admin。我的意思是,Django Dev Server运行良好。
我想在Apache上运行Django。
的httpd.conf
<Directory /var/www/html>
Options +ExecCGI
AddHandler wsgi-script .wsgi .py
</Directory>
<Directory /var/www/VEnvs/valoreiovenv/djangoproj/djangoproj>
Options +ExecCGI
AddHandler wsgi-script .wsgi .py
</Directory>
<VirtualHost *:80>
WSGIDaemonProcess contacts python-path=/var/www/VEnvs/valoreiovenv/djangoproj:/var/www/VEnvs/valoreiovenv/lib/python3.5/site-packages
WSGIProcessGroup contacts
WSGIScriptAlias /contacts /var/www/VEnvs/valoreiovenv/djangoproj/djangoproj/wsgi.py
ServerName contacts
<Directory /var/www/VEnvs/valoreiovenv/djangoproj/djangoproj>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
Alias /static/ /var/www/VEnvs/valoreiovenv/djangoproj/static
<Directory /var/www/VEnvs/valoreiovenv/djangoproj/static>
Require all granted
</Directory>
</VirtualHost>
/var/www/VEnvs/proj/djangoproj/djangoproj/wsgi.py文件
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangoproj.settings")
application = get_wsgi_application()
urls.py
from django.conf.urls import url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
当我跑:www.host.com/contacts 我: 404未找到 在此服务器上找不到请求的URL /联系人。
你可以帮我吗?
版本:
Python 3.5.1 over virtualenv 15.0.2;
Django 1.9.6;
Apache (httpd) 2.4.6 over RedHat.
mod_wsgi 3.4.12
修改 我解决了关于的问题: 在此服务器上找不到请求的URL /联系人。 谢谢大家!