当我尝试执行CGI时,它只给我纯文本。
我用apache2安装了PHP5.3.11 所有这些都是从源代码手动安装的,而不是从apt-get
安装的## Apache2
./configure --prefix/=usr/loca/apache2
make
make install
## php5
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs
make
make test
make install
以上是我用来安装apache2和php5的命令。 我想我的apache2和php5安装是正确的,因为我可以在我的服务器上运行php代码。所以我尝试正确执行CGI脚本,我想,设置一个配置。 但它只显示CGI脚本的纯文本。
###Start###
#!/usr/bin/perl -w
print "Content-type: text/html\r\n\r\n";
print "Hello there!<br />\nJust testing .<br />\n";
for ($i=0; $i<10; $i++){
print $i."<br />";
}
###End###
perl已正确安装在/ usr / bin / perl。
我将httpd.conf设置如下。
<Directory "/usr/local/apache2/cgi-bin">
Options +ExecCGI
AddHandler cgi-script .cgi .pl
Require all granted
</Directory>
我认为cgi-php5也正确安装,因为当我执行“php-cgi -h”时,它会给我一个结果。 当我通过浏览器打开phpinfo()时, GATEWAY_INTERFACE设置为CGI / 1.1
我遗失的任何事情?感谢您的帮助。
答案 0 :(得分:0)
我找到了答案。 我的错误是在httpd.conf上,这真是一个愚蠢的错误。 : - (
我必须取消注释以下行。
LoadModule cgi-script blahblah
没有人知道我为这个愚蠢的错误花了多少小时: - (