使用 WSGI 在 Windows XAMPP 中设置 Python 路径

问题描述 投票:0回答:1

我正在 Webfaction 上设置实时服务器的开发版本,在本地计算机上的虚拟 Apache 服务器环境(运行没有任何错误)中运行 Django 应用程序 - XP,使用 Python 2.6 运行 XAMPP Lite - 我可以提交更改来自通过 Git。

XAMPP 已启动并可以与 Python 一起运行,并且服务器可以在加载 WSGI 模块的情况下完美启动。问题是,当我设置 Python 路径时,它们一半设置为 'nix 格式(带 /),一半设置为 Windows 格式(带反斜杠)。

这是本地机器 Apache 错误,显示损坏的 python 路径:

[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1] mod_wsgi (pid=1436): Exception occurred processing WSGI script 'C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django/dev.wsgi'.
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1] Traceback (most recent call last):
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1]   File "C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django/lib/python2.5\\django\\core\\handlers\\wsgi.py", line 230, in __call__
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1]     self.load_middleware()
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1]   File "C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django/lib/python2.5\\django\\core\\handlers\\base.py", line 42, in load_middleware
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1]     raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))
[Fri Oct 08 14:52:53 2010] [error] [client 127.0.0.1] ImproperlyConfigured: Error importing middleware cms.middleware.multilingual: "No module named cms.middleware.multilingual"

以及有问题的 .wsgi 文件内容:

import os, sys

sys.path.append('C:/SERVER/Python26/')
sys.path.append('C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django')
sys.path.append('C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django/lib/python2.5')

from django.core.handlers.wsgi import WSGIHandler

#Add the path to Django itself
os.environ['DJANGO_SETTINGS_MODULE'] = 'website.settings'
application = WSGIHandler()

Apache httpd.conf 是 XAMPP 的默认设置(而不是虚拟实例),添加以下内容来加载 wsgi 模块

LoadModule wsgi_module modules/mod_wsgi-win32-ap22py26-3.3.so

& 指向 wsgi 文件:

WSGIScriptAlias / C:/SERVER/Python26/Lib/site-packages/website-cms/webapps/django/dev.wsgi

我知道XAMPP服务器正在使用Python2.6(我被迫使用TortoiseGIT)并且生产是在2.5上(由网络主机强制执行),但这似乎不是罪魁祸首 - 我仍然期望至少能够设置正确的路径!

欢迎所有关于让 Python 路径发挥作用的建议!

python apache windows-xp xampp mod-wsgi
1个回答
9
投票

我的电脑有Python 2.6,所以我将在假设Python 2.6是目标版本的情况下使用所有配置。

  1. 下载最新的xampp (http://www.apachefriends.org/en/xampp-windows.html),截至2010年11月29日,最新版本为1.7.3。
  2. 为Windows安装xampp,我安装在c:\xampp
  3. 下载并安装 Python 2.6 (http://www.python.org/download/releases/2.6/)
  4. 下载 Windows 版 wsgi - http://code.google.com/p/modwsgi/wiki/DownloadTheSoftware?tm=2 如有必要,请参阅文档 - http://code.google.com/p/modwsgi/wiki/InstallationOnWindows
  5. 将so文件复制到模块目录C:\xampp pache\modules,别忘了重命名为mod_wsgi.so
  6. 将以下行添加到 C:\xampp pach
© www.soinside.com 2019 - 2024. All rights reserved.