我正在尝试在我学校的服务器上创建一个网站,但他们将 PHP 安装为 CGI,因此 .php 文件只能在 cgi-bin 文件夹中运行。
如果我希望我的索引是 .php 文件而不是 .html,这会有些问题,因为它需要位于 cgi-bin 文件夹之外并且位于根 WWW 文件夹中。
此外,它是一个 apache 服务器,所以我尝试编辑我的 .htaccess 文件才意识到我不知道 php-cgi 二进制文件在哪里(毕竟这是我学校的服务器,我没有权限只是为了探索)。
有没有其他方法可以让 cgi-bin 文件夹之外的 .php 索引文件工作而不必做一些丑陋的事情,比如在根目录中创建一个 index.html 文件,该文件重定向到 cgi 中的 .php 文件-bin 文件夹?
你有几个选择。如果
mod_rewrite
打开,您可以使用它将请求重写到/cgi-bin/
.$_SERVER[]
仍将包含原始请求 URI,以便您可以根据请求的路径有条件地执行操作。或者,如果你死心塌地使用 .htaccess 使 PHP 文件可以在任何地方执行(这甚至可能是不可能的——httpd.conf 通过
AllowOverride
指令指定 .htaccess 文件可以做什么和不能做什么),那么创建一个 PHP 文件,其中包含并将其放在您的
cgi-bin
目录中,它将告诉您有关 PHP 安装的所有相关详细信息(其中应包括php-cgi
可执行文件的位置)。您可以只创建一个带有元重定向的 index.html 文件,它不会清理 URL,但至少它会起作用。