CGI脚本在Apache2中显示为纯文本(localhost)

时间:2018-05-04 17:17:26

标签: html perl localhost apache2 cgi

我目前必须在Apache2中创建一个包含登录/注册Web的Web服务器,我必须调用CGI脚本来验证用户的输入数据。好吧,当我用提交按钮调用脚本时,CGI脚本显示为纯文本,我不知道还有什么可以解决它。

我在/etc/apache2/httpd.conf中尝试取消注释CGI模块,设置CGI脚本的默认目录,取消注释CGI的AddHandler并更改我的localhost目录和CGI目录中的Options值,在其中添加ExecCGI all 。但它仍然不起作用,它只是以纯文本形式出现。

P.S。:我遵循了本教程(http://httpd.apache.org/docs/2.2/howto/cgi.html),并在StackOverflow中寻找解决方案,但我没有为我工作。

编辑:还要感谢您的帮助,如果您这样做:)

1 个答案:

答案 0 :(得分:0)

问题是目录配置,所以我保留了默认的http.config文件,该文件具有/ cgi-bin /目录的预设ScriptAlias到以下目录:

  

/库/ Web服务器/ CGI-可执行

然后我通过取消注释来自apache2的httpd.conf文件中的行(在行之前删除'#')来启用CGI模块:

  

LoadModule cgi_module libexec / apache2 / mod_cgi.so

最后我保存了文件,然后使用以下命令重新启动了Apache2服务器:

  

sudo / usr / sbin / apachectl restart

然后我将.cgi脚本粘贴到CGI-Executables目录中,将文件的权限设置为 chmod a + x

要立即运行脚本,您只需访问

  

本地主机/的cgi-bin / script.cgi

谢谢你的帮助!