求救,apache+perl的配置问题

求救,apache+perl的配置问题

各位大虾好,上次提问html文本解析的问题,得到好多好心人的帮助,现在用HTML:arser已经完全解决问题了。

但今天把文件放在我配置好的apache下运行又出错误了。

之前配置就出过这个问题,我的配置过程是这样的:


修改apache的配置文件(conf文件夹下的httpd.conf),我的apache安装路径是:\AppServ\Apache2 ,版本是2.0.59。


配置方法:

1.寻找到ScriptAlias /cgi-bin/ "d:/AppServ/www/cgi-bin/删除前面的#,将""中的路径指向存放CGI脚本的目录;

2.寻找到。将""中的路径指向你存放CGI脚本的目录,要与上面的相同。更改Options、Allow Override的参数为All

3.寻找到AddHandler cgi-script .cgi。删除前面的#,在后面加上 .pl。


保存文件后stop apache,再restart。

perl作为cgi文件开头第一行注释修改为本机perl解释器的安装路径:

#!d:\Program Files\Perl\bin\perl.exe





上次按这个方法配置原来的文件已经能访问了,但访问新编写的perl文件就又出现了500错误:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, alexander-einstein@hotmail.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.


--------------------------------------------------------------------------------

Apache/2.0.59 (Win32) PHP/4.4.4 Server at localhost Port 80



我的apache同时还运行着php,请各位大虾慷慨出手,小弟不胜感激!
lz可以先尝试从apache的error_log中找找500错误的原因.
apache的常见错误几乎都可以通过error_log发现.


QUOTE:
原帖由 gsging 于 2008-5-6 09:29 发表
lz可以先尝试从apache的error_log中找找500错误的原因.
apache的常见错误几乎都可以通过error_log发现.

嗯,error.log的记录是这样的:

[Tue May 06 09:40:21 2008] [error] [client 127.0.0.1] Premature end of script headers: test3.pl


过早结束脚本头是什么意思?谢谢大虾!
还有:

Character set '#24' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file


在线等待,多谢大虾!
500错误的意思就是说程序出现了错误。
最后的这个提示,是说你的程序里面有一些不可见的特殊字符。你的代码是copy来的吧?好好检查一下不可见字符。
问题已经解决

我在文件中忘记使用这个了:

print "Content-type:text/html\n\n";


暴寒啊 -_-\\\