![无法在 Ubuntu 上安装 CGI 脚本](https://linux22.com/image/1099457/%E6%97%A0%E6%B3%95%E5%9C%A8%20Ubuntu%20%E4%B8%8A%E5%AE%89%E8%A3%85%20CGI%20%E8%84%9A%E6%9C%AC.png)
我正在尝试在 Ubuntu 上安装 CGIProxy。
http://www.jmarshall.com/tools/cgiproxy/install.html#install
基本上它是一个单独的“nph-proxy.cgi”文件,我将其放在我的 /var/www 文件夹中。
我按照说明使用了该命令:
./nph-proxy.cgi install-modules
似乎什么都没有发生,当我在浏览器中导航到带有“nph-proxy.cgi”的 IP 地址时,我看到的只是一整页代码,而我应该看到一个 GUI 表单。
我对 Linux 和模块还很陌生,非常感谢任何帮助。
谢谢
答案1
这意味着 Web 服务器不知道在此位置应该执行以“.cgi”结尾的文件,而不是直接传递给浏览器。您需要以这样的方式配置 Web 服务器,即驻留的目录nph-proxy.cgi
或扩展自动被视为程序。配置的细节将取决于您的 Web 服务器(Apache、lighttpd 等)。
/var/server/www/cgi-bin/
或者尝试将文件移动到已为可执行文件配置的现有目录(例如)。
要配置 Apache,请打开文件(使用 sudo 或 gksu)/etc/apache/apache2.conf
:
gksu gedit /etc/apache/apache2.conf
搜索是否有这样一行:
ScriptAlias /cgi-bin/ /some/directory/or/another/cgi-bin/
如果是,请创建该目录 ( sudo mkdir /some/directory/blah/blah/cgi-bin/
) 并将 CGI 脚本放在那里。如果没有,请添加此行。然后当您调用 URL 时
http://your.machine.blah.foo/cgi-bin/nph-proxy.cgi
它将被执行。
或者,您可以允许 CGI 脚本在特定目录中执行。将以下内容放入您的配置文件中:
<Directory /the/directory/where/your/script/is/>
Options +ExecCGI
</Directory>
AddHandler cgi-script cgi pl
(检查 AddHandler 行是否已经在您的配置中!)