【问题标题】:Django 1.4 using Apache Virtual Host使用 Apache 虚拟主机的 Django 1.4
【发布时间】:2013-02-16 07:13:18
【问题描述】:

我正在 Apache 上安装 django 1.4,我也打算为 PHP 应用程序使用相同的网络服务器。 我的操作系统是 Ubuntu 12.04 LTS。如果我在主 conf 文件上进行配置,localhost 将直接指向 Django 安装页面,甚至 PHP 应用程序也是如此。所以我在 /etc/apache2/sites-available 创建了一个 vhost 文件并将其命名为“项目” .但是,在我看来,它无法指向 wsgi 文件。 这是我的配置:

<VirtualHost *:80>
    DocumentRoot /var/www/project/
    ServerName project
    WSGIScriptAlias / /var/www/project/project/wsgi.py

    <Directory "/var/www/project/project">
         <Files wsgi.py>
            Order deny,allow
            Allow from all
         </Files>
   </Directory>

</VirtualHost>

这是我的 wsgi.py 文件:

import os
import sys

sys.path.append('/var/www/project')
os.environ['DJANGO_SETTINGS_MODULE'] = 'project.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

我错过了什么?我坚信这与&lt;VirtualHost&gt; 指令有关 因为即使我故意在那里做一些语法错误,它也不会读取 wsgi 文件,并且当我重新启动它时 Apache 没有检测到这些错误。

【问题讨论】:

  • 您是否从您的sites-available 文件链接到sites-enabled 以实际启用它?
  • 执行a2ensite项目后,symlinks会在sites-enabled里面自动生成。
  • 可能是其他配置覆盖了您的设置?禁用启用站点中的所有其他配置文件,看看它是否有效。
  • 好的,现在,在将 Include sites-enabled/project 放入 apache2.conf 并重新启动网络服务器后,我收到 500 错误,但这次它读取 wsgi 文件。日志中的错误是: ImportError:无法导入设置“project.settings”(它在 sys.path 上吗?):没有名为 project.settings 的模块。有什么想法吗?

标签: django


【解决方案1】:

那是愚蠢的。我差点忘了python会在8000端口上运行!

我实际上需要进入项目文件夹的第一级并通过执行以下命令来运行Django开发服务器:python manage.py runserver

谢谢。

【讨论】:

    猜你喜欢
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 2011-06-19
    • 2014-05-28
    • 2017-03-06
    • 2014-04-09
    相关资源
    最近更新 更多