apache支持python
‘壹’ 怎么配置apache才能同时支持python 和php程序
你apache用什么方式运行django?
mod_wsgi?mod_python?
可定要配置VirtualHost
这里有个wsgi的方式,你可以参考下
zeuux.com/blog/content/3738/
‘贰’ 如何让Apache像支持Php那样支持Python
第一步:先下载安装mod_python-3.3.1.win32-py2.5-Apache2.2.exe这个apache的模块选择apache的安装目录,会在moles中生成mod_python.so这个文件
第二步:修改apache下的http.conf文件加入
LoadMole python_mole moles/mod_python.so
<Directory E:\WampServer\www\python>
AddHandler mod_python .py
PythonHandler test
PythonDebug On
</Directory>
test.py
from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK
如果输出hello world 就成功了
‘叁’ 如何在Apache下设置Python
关于Python,本人不想多说了,如果不知道什么是Python,可以看《什么是Python?》一文。Python可以开发CGI程序,那么在Apache下应如何配置呢?本文只讲述了如何以CGI方式配置Apache,使其支持Python程序。其它方式,如mod_python则不在讨论范围(其实是没配成功:-)。我所使用的系统环境为Windows 98, Apache 1.3.19,Python 2.1版。
准备
首先检查以下要求是否已经达到:
Apache已经安装,并且可以正常使用
Python已经安装,并且可以正常使用(在我的环境下,Python安装目录为d:\python21)
好,如果一切正常,下面就开始了。
配置
修改DocumentRoot
打开Apache安装目录下的conf子目录的httpd.conf文件。可以修改DocumentRoot为"f:/phpsite"。当然你可以按需要改成其它值。
允许任意目录执行CGI
这个设置是允许被设目录及其子目录下的CGI程序可以CGI方式运行。在Apache中,尽管你可能已经设置了CGI文件后缀,但是如果未设置允许CGI程序运行选项,则无法运行CGI程序。
设置f:/phpsite目录属性:
Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride None
Order allow,deny
Allow from all
其实我并未重新设置新的目录属性,而是将DocumentRoot的目录属性(原来指向Apache安装目录下的htdocs目录,我改成为f:/phpsite了)增加了ExecCGI一项。
只允许特别目录执行CGI
也可以只允许特别目录下可以执行CGI程序。与上一步可以同时执行,也可两种任选其一。只要设置:
ScriptAlias /cgi-bin/ "f:/phpsite/cgi-bin/"
即可。
增加CGI文件名后缀
修改 AddHandler cgi-script 一句为 AddHandler cgi-script .cgi .py。即让Apache知道.py的文件为CGI程序
好了,到此Apache就配置好了,先启动Apache,然后进行测试。
测试
Python本身不象PHP,不是一种嵌入式脚本(这种脚本比较适合做Web后端程序),所以所有输出要自已做。
1 #!d:/python21/python.exe
2 print "Content-type: text/html"
3 print
4 print "
hello,world!
"
第1行是让脚本以CGI方式运行必需的(这里是我的环境,记得吗?我前面说了Python是装在d:/python21下的),告诉Apache如何找到此文件的解释程序。
第2,3行是告诉浏览器输出内容的MIME格式。这里为输出HTML文本。
第4行,输出"hello,world!"。其实不输出HTML的标记头浏览器也可以正常显示,尽管它不是完整的HTML格式。
如果测试成功,则一切大功告成。如果不行,听天由命吧(可以给我发信,咱们共同解决)。
后话
在SourceForge网站上,有一个名字mod_snake的项目。它同mod_python一样提供了针对Apache的Python模块化处理,但是mod_snake支持HTML文档嵌入Python标记,有点象PHP。不过现在它只支持Linux,而没有Windows下的版本。唉,我一定要转到Linux下面去!使用CGI方式调用Python速度不是很快,而如果使用mod_python则速度可能要快几十倍。这个不是我测出来的,是mod_python网站上说的。
转载仅供参考,版权属于原作者。祝你愉快,满意请采纳哦
‘肆’ apache 同时配置python 和php
配置apache+django+mod_wsgi环境
newliver 2011年03月18日 星期五 11:32 | 15102次浏览 | 4条评论
新公司还是用apache,有段时间没看django官网,以为还是用mod_python,看了一下介绍,官方推荐使用mod_Wsgi,据说nginx本身就内置了此mole,说明它的性能还是不错的~而且mod_python已不再更新,和apache使用时,经常出现错误信息~从而配置了一下此环境,以此记录过程~个人觉得以后还是换成nginx+uwsgi才行,哈哈~
配置apache+django+mod_wsgi环境
作者:liuzemin
时间:2011-3-4
目录
1 开发环境
2 前提
3 配置Apache
4 配置django项目wsgi文件
1 开发环境
lubuntu10.04
python2.6
django1.25
mod_wsgi3.x
apache2.x
2 前提
搭建好开发环境 python和django的安装略过,相信大家都会的 以下是安装apache及mod_wsgi模块支持库
sudo apt-get install apache2
sudo apt-get install libapache2-mod-python2.6
sudo apt-get install libapache2-mod-wsgi
3 配置Apache
进入apache安装目录
cd /etc/apache2/
sudo gvim httpd.conf
编辑apache目录下面的httpd.conf文件,添加以下内容
#加载mod_wsgi模块
LoadMole wsgi_mole moles/mod_wsgi.so
#配置wsgi脚本的本地项目位置
WSGIScriptAlias / /home/alex/work/app/wsgi_test/apache/django.wsgi
<VirtualHost *:9000>
ServerName 127.0.1.1
#ServerAlias www.xxx.com
#DocumentRoot /home/alex/work/app/wsgi_test
<Directory "/home/alex/work/app/wsgi_test">
Order Deny,Allow
Allow from all
</Directory>
</VirtualHost>
4 配置django项目wsgi文件
#新建项目wsgi_test
django-admin.py startproject wsgi_test
#新建目录存放wsgi文件
mkdir apache
#编辑wsgi文件 gvim django.conf #添加以下内容
# -*- coding: utf-8 -*-
import os
import sys
import django.core.handlers.wsgi
os.environ['DJANGO_SETTINGS_MODULE'] = 'wsgi_test.settings'
app_apth = "/home/alex/work/app/"
sys.path.append(app_apth)
application = django.core.handlers.wsgi.WSGIHandler()
别忘记重启一下apache
sudo /etc/init.d/apache2 restart
至此打开浏览器即可看到django熟悉的it worked界面
【如果出现配置相关错误,请查看对应的路径是否配置正确;如果apache报内部错误,可以在系统日志文件查看apache出错日志查找原因】
‘伍’ 如何让apache2支持python3
看起来应该是把python作为纯文本解析了,你把你apache的配置文件贴出来,或者放到网盘,把地址贴出来。
‘陆’ 怎么让apache2能运行Python
在Ubuntu中,采用 sudo apt-get install apache2 安装apache服务后,是不会带Apxs,需要安装 apache2-dev。其命令是:sudo apt-get install apache2-dev
安装完后查看安装的路径: whereis apxs2
如果在安装Mod_pythond的make过程出现这样到错误:fatal error: Python.h: No such file or directory,可以安装python2.7-dev(装的是V2.7)解决,命令为:sudo apt-get install python2.7-dev
Apxs的默认位置:usr/bin/apxs,但在ubuntu11版本中已经是usr/bin/apxs2
Mod_python模块的安装:
现在可以正式安装Mod_python模块了。
1.首先从Mod_pythod(http://modpython.org/)官网上下载文件,其文件名为:mod_python-3.3.1.tgz(我下的是3.3.1版本的)。然后,对这个文件进行解压操作:tar -zxvf /home/cosmos/mod_python-3.3.1.tgz (其中的目录可以自己放置)。
2.解压后通过cd mod_python-3.3.1命令进入mod_python-3.3.1这个文件夹。
3.进行Apxs目录配置, 命令为:./configure --with-apxs=/usr/bin/apxs2。
4.进行Python本地配置,命令为:./configure --with-python=/usr/bin/python2.7(自己装的Python是2.7版本的)。
7.安装完成后会在/usr/lib/apache2/moles/生成mod_python.so这个文件,需要把它加载到apache2的配置文件中。修改/etc/apache2/httpd.conf文件,增加这么一行内容:LoadMole python_mole /usr/lib/apache2/moles/mod_python.so。然后,再重启apache服务就可以了。
‘柒’ python和apache冲突吗
python的一门编程语言,apache是一个开源的web服务器,虽然apache通过mod可以支持python,但是跟python不是一类东西,所以不会有冲突。
如果解决了您的问题请采纳!
如果未解决请继续追问!
‘捌’ 如何让apache支持python
话说apache不能启动原因非常多,建议用排除法,如果什么肯定是wsgi.so文件有问题,试下for python2.6看看。我记得第一次配置apache的时候,error文件报mole wsgi错误,但后来发现其实是静态文件路径写错了。
‘玖’ 配置Apache,使apache同时支持PHP和python。
你apache用什么方式运行django?
mod_wsgi?mod_python?
可定要配置VirtualHost
这里有个wsgi的方式,你可以参考下
http://www.zeuux.com/blog/content/3738/