0
我正在尝试制作一个简单的表单,您可以在其中输入您的姓名,点击提交按钮后,您会被重定向到一个页面,上面写着“Hello name_that_was_submited!”。我创建了 index.html 页面并激活了 Apache 的 CGI 模块,但我只让它输出 QUERY_STRING 环境变量,这样我才能看到一切都设置好了。在表单中输入姓名并点击提交后,我的浏览器只打开了一个包含 CGI 代码的 txt 文件。我以为是我错误地设置了 CGI 模块,但我尝试的所有修复方法都失败了。
首先,我尝试修改主配置文件(我使用 Debian 10 发行版),如下所示
<Directory "/var/www/cgi-bin/">
Option +ExecCGI
Require all granted
Addhandler cgi-script .cgi
</Directory>
它不起作用。从主配置文件中删除它,并在一堆其他文件中尝试它(debian 处理配置的方式真的让我很困惑)。最后,我通过将其写入 /etc/apache2/sites-available/000-default.conf 文件中得到了一些结果,<VirtualHost>
因为它在浏览器中显示了代码,而不是在另一个 txt 文件中,但它应该显示 QUERY_STRING 变量的内容。
这些文档非常混乱,因为对我来说配置的方式与他们描述的非常不同(我甚至没有 httpd.conf 文件作为主配置文件),所以我很困惑。任何帮助都将不胜感激。
我还应该提到,cgi 脚本是用 Bash 编写的,因为这是大学的作业,我们需要用 Bash 编写所有内容。