Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 1.4 mod_wsgi-403禁止访问/拒绝访问_Django_Mod Wsgi - Fatal编程技术网

Django 1.4 mod_wsgi-403禁止访问/拒绝访问

Django 1.4 mod_wsgi-403禁止访问/拒绝访问,django,mod-wsgi,Django,Mod Wsgi,我浪费了大约3天的时间试图让apache与django合作,结果非常沮丧。 我读过 链接之间的配置不同,我怀疑它们现在在django 1.4中有点过时了 我在apache日志中遇到的错误是 (13) 权限被拒绝:访问/拒绝 环境: Python 2.62 Windows Azure上的Centos 6.2 Apache/2.2.15 Django 1.4 路径: /home/craig/django/myproject/myproject/wsgi.py 权限: /主页/:drwxrwxr-

我浪费了大约3天的时间试图让apache与django合作,结果非常沮丧。 我读过

链接之间的配置不同,我怀疑它们现在在django 1.4中有点过时了 我在apache日志中遇到的错误是

(13) 权限被拒绝:访问/拒绝

环境: Python 2.62

Windows Azure上的Centos 6.2

Apache/2.2.15

Django 1.4

路径: /home/craig/django/myproject/myproject/wsgi.py

权限: /主页/:drwxrwxr-x

/home/craig/:drwxrwxr-x

/home/craig/django/:drwxrwxr-x

/home/craig/django/myproject/:drwxrwxr-x

/home/craig/django/myproject/myproject/:drwxrwxr-x

/home/craig/django/myproject/myproject/wsgi.py:-rw-r--r--

Http.conf:
当我从Django 1.3升级到1.4时,我使用了守护进程(我没有使用较旧版本的Django)。这对我来说适用于Django 1.4
wsgi.py
文件,由
createprojet
生成。以下是我的一个配置的简化版本:

Listen 8091

<VirtualHost 127.0.0.1:8091>

  ServerAdmin admin@foobar.com
  ServerName foobar.com

  # Django 1.4 project and virtualenv
  WSGIDaemonProcess foobar python-path=/home/micah/www/foobar.com/foobar:/home/micah/www/foobar.com/venv/lib/python2.6/site-packages
  WSGIProcessGroup foobar
  WSGIScriptAlias / /home/micah/www/foobar.com/foobar/foobar/wsgi.py

</VirtualHost>
听8091
服务器管理员admin@foobar.com
ServerName foobar.com
#Django 1.4项目和virtualenv
WSGIDaemonProcess foobar python path=/home/micah/www/foobar.com/foobar:/home/micah/www/foobar.com/venv/lib/python2.6/site-packages
WSGIProcessGroup foobar
WSGIScriptAlias//home/micah/www/foobar.com/foobar/foobar/wsgi.py

我应该注意到Apache在一个Nginx代理(因此是虚拟主机的IP地址)后面,我使用的是虚拟环境(因此是
python路径
)。

通过运行以下命令禁用SELINUX立即修复了此问题: 设置强制执行0

这可能不是最好的做法,但出于开发目的,它为我做了这项工作

这是
import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
Listen 8091

<VirtualHost 127.0.0.1:8091>

  ServerAdmin admin@foobar.com
  ServerName foobar.com

  # Django 1.4 project and virtualenv
  WSGIDaemonProcess foobar python-path=/home/micah/www/foobar.com/foobar:/home/micah/www/foobar.com/venv/lib/python2.6/site-packages
  WSGIProcessGroup foobar
  WSGIScriptAlias / /home/micah/www/foobar.com/foobar/foobar/wsgi.py

</VirtualHost>