如何解决您无权访问此服务器上的/

时间:2016-07-28 10:03:26

标签: django apache mod-wsgi centos6

您好我需要帮助将django与apache和mod_wsgi集成在centos6上。 我每次都会收到以下错误---“禁止您无权访问此服务器上的/。” 我的django项目路径= / home / mchauras / esapp / eswebsite 我的apache版本是2.2.15 我的.conf文件看起来像这样----

<VirtualHost *:80>
    DocumentRoot /home/mchauras/esapp/eswebsite/
    Alias /static /home/mchauras/esapp/eswebsite/esapp/static
    <Directory /home/mchauras/esapp/eswebsite/esapp/static>
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride None
        Order deny,allow
        Allow from all
    </Directory>

    <Directory /home/mchauras/esapp/eswebsite/eswebsite>
        <Files wsgi.py>
            Options Indexes FollowSymLinks Includes ExecCGI
            AllowOverride None
            Order deny,allow
            Allow from all
        </Files>
    </Directory>

    WSGIDaemonProcess esapp python-path=/home/user/myproject:/home/mchauras/esapp/eswebsite/myvenv/lib/python3.5/site-packages/
    WSGIProcessGroup esapp
    WSGIScriptAlias / /home/mchauras/esapp/eswebsite/eswebsite/wsgi.py
    ErrorLog /home/mchauras/esapp/eswebsite/error.log
    CustomLog /home/mchauras/esapp/eswebsite/access.log combined
</VirtualHost>

我的wsgi.py文件是这样的---

import os
import sys
from django.core.wsgi import get_wsgi_application
sys.path.append('/home/mchauras/esapp/eswebsite')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "eswebsite.settings")

application = get_wsgi_application()

2 个答案:

答案 0 :(得分:0)

看起来您没有以管理员用户身份登录,或者您需要更改并启用路径中的所有文件权限

答案 1 :(得分:0)

此特定错误通常始终由Apache运行的用户无法访问WSGI脚本文件引起。仅仅使文件本身对其他人可读是不够的。从'/'到该目录的所有目录也必须是Apache运行的用户可访问的。由于用户的主目录通常不被其他人读取,因此Apache用户无法看到它。最好将应用程序目录移到主目录之外。

另一个可能的原因,虽然通常导致稍有不同的错误,但是启用了SELinux,其中SELinux上的Apache httpd服务器的配置文件不允许访问应用程序所在的目录。