在Windows平台上使用Xampp运行Python代码
XAMPP-PYTHON-WINDOWS
我安装了XAMPP,正在运行Apache网页服务器和MySQL服务。我想在我的网页服务器上托管我的Python代码。但是,我在把Python和XAMPP结合起来时遇到了困难。我读到了mod_wsgi,下载了它并把它放在了模块文件夹里。我在C盘上安装了Python 3.2。
请告诉我接下来该怎么做,比如我应该把Python文件放在哪里,以及如何通过网页浏览器执行它们?我应该能够这样做:
http://74.xxx.xxx.xx/python/test.py(localhost/python/test.py)
这样就能执行Python代码。
但是当我尝试这样做时,我得到了这个:
服务器错误!
服务器遇到了内部错误,无法完成你的请求。可能是服务器过载,或者CGI脚本出错了。
如果你认为这是服务器错误,请联系网站管理员。
错误 500
74.194.129.16
3/2/2011 2:11:16 AM
Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1
非常感谢所有的帮助。
2 个回答
mod_wsgi并不是用来直接运行Python脚本的。它是一种在独立进程中托管长时间运行的Python应用程序的方法,这些进程是由Apache来调度的。而且,你不能仅仅通过把模块“粘贴”到一个文件夹里就安装Apache模块。
如果你只是想通过给Apache提供Python脚本的路径来运行这些脚本,其实这是一种很糟糕的做法,你需要配置Apache,让它把Python脚本当作CGI来处理。关于如何做到这一点,有很多文档可以参考。
不过,更好的方法是通过编写一个合适的WSGI服务来提供你的代码,可能可以使用很多简单的框架,我最喜欢的是Flask。
官方发布的mod_wsgi不支持Python 3.2,所以你不能使用它。如果想用Python 3.2,你需要从源代码编译mod_wsgi,这个过程可能会有点复杂,考虑到你之前遇到的问题,我觉得这对你来说可能有点难。所以,建议你使用Python 2.6或2.7。另外,你可以查看以下链接:
http://code.google.com/p/modwsgi/wiki/InstallationOnWindows http://code.google.com/p/modwsgi/wiki/DownloadTheSoftware?tm=2#Windows_Binary_Downloads
正如Daniel建议的,我也建议你使用Flask。你也可以试试web2py,这也是一个对新手友好的框架。如果你刚开始学习这些东西,我建议你不要使用Apache/mod_wsgi,而是直接使用你所用的Python网络框架自带的开发服务器。这样可以避免很多麻烦,特别是如果你对Apache一无所知的话。