karrigell与apache结合问题????????

karrigell与apache结合问题????????

我使用的系统是windows,直接在使用python karrigell.py调试后可以使用打开主页,一切正常。
现在我想把它与apache2结合起来,看了网上及karrigell自带的教程相应的配置都没有成功。
httpd.conf的配置是:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so

ProxyRequests On
<Proxy *>
    Order allow,deny
    Deny from none
    Allow from all
</Proxy>

Listen 127.0.0.1:8081
<Location "/">
         RewriteEngine On
         RewriteCond  %{SCRIPT_FILENAME} !autostart\.cgi$
         RewriteRule ^(.*) http://localhost:8081$1 [P]
         ErrorDocument 502 /cgi-bin/autostart.cgi
</Location>


当中有一个autostart.cgi的文件,把它放在apache目录下的cgi-bin子目录中,文件代码是:
#!C:/Python24/python.exe
print "Content-type: text/html\r\n"
print """<html><head><META HTTP-EQUIV="Refresh" CONTENT="10;
      URL=/"></head><body>Restarting site ...<a href="/">click
      here<a></body></html>"""
import os
import sys
os.system(sys.executable + \
   r'"E:/Karrigell-2.2.5/Karrigell.py" -P 8081 -S ' +\
   r'"E:/Karrigell-2.2.5/Karrigell.ini" &')

设置完后,apache能够成功启动,没有一点报错。但是就是不能访问主页,也就是说karrigell与apache没有结合起来,真是郁闷,我都搞了3天了,一直在网上找资料,就是不成功。不知道那位老兄给我指点指点!!!!!!!


QUOTE:
原帖由 ragkk 于 2006-6-4 10:28 发表
我使用的系统是windows,直接在使用python karrigell.py调试后可以使用打开主页,一切正常。
现在我想把它与apache2结合起来,看了网上及karrigell自带的教程相应的配置都没有成功。
httpd.conf的配置是:
Loa ...

上面的karrigell的cgi程序应该是在linux下apache运行的。在windows下,你的apache配置文件关于执行这个cgi程序的语句可能需要添加"pthon"参数,具体如何添加请查一下apache的资料。
好象不需要添加任何参数,我看了很多资料,在windows下面没有这样的要求,
不知道是否可行,资料太少了,没办法找到。
哎,看来这个karrigell与apache在 windows下根本就不能行的通了。
难道让我再装个liunx吗???


QUOTE:
原帖由 ragkk 于 2006-6-4 13:16 发表
好象不需要添加任何参数,我看了很多资料,在windows下面没有这样的要求,
不知道是否可行,资料太少了,没办法找到。
哎,看来这个karrigell与apache在 windows下根本就不能行的通了。
难道让我再装个liunx吗 ...

看看这两个说明:
http://www.zhirui.com/it/2004/8-3/700.html
http://www.phpe.net/articles/239.shtml
python设置应和perl大同小异
谢谢斑竹,不过这两个文件我早就参考过了。已试过多次,没有成功!
哎,真郁闷
你的配置文件我测试过了,首次访问http://localhost/时会出现较长时间等待(5分钟?),然后再次访问时http://localhost/可出现karrigell初始页面。
单独运行cgi程序
python autostart.cgi
karrigell运行正常。
此时如果再启动apache,一些正常。
总结如下:
1 先启动karrigell(命令行下:python autostart.cgi),再启动apache,一切正常;
2 直接启动apahce,由apache调autostart.cgi脚本来启动karrigell,需要等5~10分钟,然后才可以正常访问。
这个问题有时间我会再看看。
但你可以先启动karrigell,再运行apache,暂时搭个环境做别的工作,不要耗死在这个问题上。
需要注意的是,我的http.conf文件中以下语句与你的不一样:
Listen 127.0.0.1:80 ----->删除
<Location "/"> ------->删除
RewriteEngine On
RewriteCond  %{SCRIPT_FILENAME} !autostart\.cgi$
RewriteRule ^(.*) http://localhost:8081$1 [P]
ErrorDocument 502 /cgi-bin/autostart.cgi
</Location> ------>删除
其它都与你的一样,autostart.cgi就是使用你的文件,当然相关文件路径改为我自己机器上路径。
测试环境:
Win2000 Server
Apache 2.2
karrigell 2.2.4