我已经使用taskel并安装了LAMP服务器。但我似乎无法确定Cgi-bin是否已设置。Web根文件夹中没有Cgi-bin。当我尝试从浏览器调用test.py文件时,它会下载它而不是执行它。
我已查看过各种操作方法,但仍然没有找到答案。
Ubuntu 14.04 Apache 2.4.7(2014 年 4 月 3 日)
答案1
ScriptAlias 指令与 Alias 指令具有相同的行为,除了它还将目标目录标记为包含将由 mod_cgi 的 cgi-script 处理程序处理的 CGI 脚本。具有以 URL-path 开头的区分大小写(%-decoded)路径的 URL 将映射到以第二个参数开头的脚本,该参数是本地文件系统中的完整路径名。
这脚本别名指令如下:
ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/
这意味着如果你请求 URL http://mydomain/cgi-bin/myscript.py
Apache 尝试运行/usr/local/apache2/cgi-bin/myscript.py
ScriptAlias 指令告诉 Apache 为 CGI 程序预留了一个特定目录。当客户端请求该特定资源时,Apache 将假定此目录中的每个文件都是 CGI 程序,并将尝试执行它。
脚本别名指令在默认apache2.conf
配置文件中,并且如果mod_cgi已启用且myscript.py
可执行,并返回正确的输出。
如果您有不同的配置,您应该阅读:Apache 教程:使用 CGI 的动态内容