【问题标题】:Deploying Multiple Django projects on apache with wsgi使用 wsgi 在 apache 上部署多个 Django 项目
【发布时间】:2014-05-21 22:32:04
【问题描述】:

我正在尝试提供一个域名并在我的 apache 上运行多个 django 项目

<VirtualHost first.site.com:80>
     ServerName first.site.com
     WSGIDaemonProcess first
     WSGIScriptAlias / /opt/project/first/first/wsgi.py process-group=first application-group=%{GLOBAL}
    ErrorLog ${APACHE_LOG_DIR}/error.log
    <Directory /opt/project/first/first>
    Order allow,deny
    Allow from all
    </Directory>
</VirtualHost>

<VirtualHost second.site.com:80>
     ServerName second.site.com
     WSGIDaemonProcess second
     WSGIScriptAlias / /opt/project/second/second/wsgi.py process-group=second application-group=%{GLOBAL}
    ErrorLog ${APACHE_LOG_DIR}/error.log
    <Directory /opt/project/second/second>
    Order allow,deny
    Allow from all
    </Directory>
</VirtualHost>

但是,第二个网站不起作用。

 You don't have permission to access / on this server.

非常感谢任何建议。

谢谢

【问题讨论】:

    标签: django apache virtualhost wsgi


    【解决方案1】:

    将虚拟主机设置从 Apache 2.2 更新到 Apache 2.4

    Apache 2.2

    Order allow,deny
    Allow from all
    

    Apache 2.4

    Require all granted
    

    【讨论】:

    • 如果您加载了适当的 Apache 兼容性模块,那么旧方法应该仍然有效。如果没有兼容性模块,Apache 在启动时很可能会出错,因为它不知道指令是什么。
    【解决方案2】:

    是否所有目录都从/向下到 WSGI 脚本文件对 Apache 用户可读的目录?这就是您收到此错误的主要原因。

    【讨论】:

    • chmod -R 777 /opt/project/second..和apache restart..还是有同样的问题
    • 不要简单地 chmod 777。这会将所有内容都暴露给写作并且是不好的做法。
    猜你喜欢
    • 1970-01-01
    • 2012-12-19
    • 2012-11-16
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    • 2014-07-15
    • 2014-04-11
    相关资源
    最近更新 更多