python - 使用 apache、mod-wsgi 部署 django

标签 python django mod-wsgi

我正在尝试使用 wsgi 部署 django。但它不起作用。你能帮帮我吗?谢谢你

django.wsgi.py

#!/usr/bin/python
import os, sys
sys.path.append('/home/me/project')
os.environ['DJANGO_SETTINGS_MODULE'] = 'project.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

/etc/apache2/sites-available/default

    <VirtualHost *:80>

  ServerName www.me.org
  ServerAlias *me.org

  Alias /admin_media /usr/lib/python2.4/site-packages/django/contrib/admin/media

  <Location /admin_media>
    Order allow,deny
    Allow from all
  </Location>

  Alias /media /var/www/media/

  <Location /media>
    Order allow,deny
    Allow from all
  </Location>

  WSGIScriptAlias / /home/me/project/apache/django.wsgi

  WSGIDaemonProcess me processes=2 maximum-requests=500 threads=1
  WSGIProcessGroup me

</VirtualHost>

错误信息

   /etc/init.d/apache2 restart
Syntax error on line 3 of /etc/apache2/sites-enabled/me:
Invalid command 'PythonHandler', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.
   ...fail!

更新:奇怪的/etc/apache2/sites-enable/me

<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
PythonDebug On
PythonPath "['/home/me2'] + sys.path"
SetEnv DJANGO_SETTINGS_MODULE me.settings

我可以禁用 mod-python 吗?

最佳答案

很明显,您的错误消息来自与您在此处显示的文件不同的文件 - me 而不是 default。该文件显然引用了 PythonHandler,这是一个属于 mod_python 的指令,您似乎没有安装它(而且不应该安装,因为它已被弃用).

当你修复了那个错误 - 很可能是通过完全删除那个文件 - 你将在你的 wsgi 文件中修复另一个错误 - 你已经添加了 project 到 pythonpath 的路径,但随后将您的设置引用为 project.settings,因此不会找到它。要么添加父路径,要么将设置引用为 settings

关于python - 使用 apache、mod-wsgi 部署 django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8353886/

相关文章:

列表中的 Python 列表

python - 调用构造函数时在python中解析多级和多级继承的方法顺序

css - 在 Django 中获取 CSS 下拉菜单选项名称

python - 在Python的BeautifulSoup renderContents中,'list'对象没有属性 'items'

python - 使用 Django 创建网站,但图像在部署到 heroku 时未显示,但在 localhost 中显示

c - Apache 模块 : C module vs mod_wsgi python module - Performance

python - 在 pandas 图中应用其他核函数

python - 使用 Pandas 从 URL 读取 excel 文件 - XLRDError

django - 为什么 Django 文档建议为静态文件使用单独的服务器?

python - Django 管理页面未显示