Apache2主机,url未与mod\wsgi一起提供

2024-09-22 14:37:05 发布

您现在位置:Python中文网/ 问答频道 /正文

刚说要用Django托管一个网站,问题是这样的。在

我在/usr/local/django/virenv/Personal/mysite.com/下放置了一个用于测试的html文件,它也是000-default.conf中的文档根,可以通过mysite.com网站在

然后我启动了一个django项目和一个应用程序,在应用程序中/视图.py我把

from django.shortcuts import render
from django.http import HttpResponse    
def index(request):
        return HttpResponse("Hello, a django view.")

在应用程序中/网址.py我把

^{pr2}$

在项目中添加了以下内容/网址.py在

urlpattrens = [
    url(r'^home/', include('app.urls')),
    # below is admin url created with startproject
    url(r'^admin/', admin.site.urls)),
]

最后,在项目中我将首秀设为False/设置.py,并将ip添加到允许的\u主机

python manage.py runserver ip:8080之后,ip:8080/home/index和ip:8080/admin都可用。在

接下来我尝试重新启动apache2,转到mysite.com/admin以及mysite.com/home/index在

两个都有

404
Not Found The requested URL /admin was not found on this server.

我想mod\wsgi坏了。在

在httpd.conf看起来像

LoadModule wsgi_module modules/mod_wsgi.so

WSGIScriptAlias / /usr/local/django/virenv/Personal/mysite.com/project/wsgi.py process-group=mysite.com
WSGIPythonHome /usr/local/django/virenv
WSGIDaemonProcess mysite.com python-home=/usr/local/django/virenv python-path=/usr/local/django/virenv/Personal/mysite.com
WSGIProcessGroup mysite.com
WSGIApplicationGroup %{GLOBAL}

<Directory /usr/local/django/virenv/Personal/mysite.com/project>
<Files wsgi.py>
Order allow,deny
Allow from all
Require all granted
</Files>
</Directory>

<Directory /usr/local/django/virenv/Personal/mysite.com/>
     Order allow,deny
     Allow from all
     Require all granted
     Options -Indexes +FollowSymLinks -Includes
</Directory>

000个-默认.conf看起来像

    <VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /usr/local/django/virenv/Personal/mysite.com
        <Directory /usr/local/django/virenv/Personal/mysite.com>
            AllowOverride All
            Options +FollowSymLinks
            Require all granted
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

我在apache2.4和django1.10中使用Ubuntu16LTS

沿此路径的每个目录和文件

/usr/local/django/virenv/Personal/mysite.com/*

设置为chmod a+xchmod a+r

有什么猜测或解决方案吗?在

编辑:对了,在wsgi.py在

import os
import sys # added from other stack overflow answers
import django.core.handlers.wsgi as WSGIhand # added from other posts
os.environ.["DJANGO_SETTINGS_MODULE"] = "project.settings"

application = WSGIhand.WSGIHandler()

Tags: djangofrompyimportcomwsgihomeadmin