基本上,php只能在我主机的cgi-bin文件夹中执行。
在我的网站空间中,我的 index.html 文件路径如下所示:
www.example.edu/~username/index.html
当用户键入时,我想要一个 mod_rewrite 来:
www.example.edu/~username/cgi-bin/index.php
执行此操作的 mod_rewrite 代码是什么?我已经尝试了很多东西,但它不起作用。我认为这也可能与 index.html 实际具有以下路径有关(这是我必须使用 unix 命令所要做的):
www.example.edu/~username/WWW/index.html
但是,www.example.edu/~username/index.html 将我带到 WWW 文件夹中的 index.html
这是我的 .htaccess 文件:
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.c
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^/index.html$ /cgi-bin/index.php [L]
</IfModule>
是否要重定向或重写 URL?如果重定向浏览器的 URL 栏地址会改变。你可以这样做:
如果你想重写它,这样用户就看不到 PHP URL,比如:
查询字符串(例如
?foo=bar
)将传递给 PHP 脚本。[L]
表示“最后一个”——不处理任何以下规则。编辑:
你一定能用
mod_rewrite
吗?尝试删除您的 <IfModule
> 行,看看您是否收到错误(如果模块无法加载或未加载,您会看到 500)。并尝试:
这将强制执行 302 重定向,从而更改您的浏览器 URL。这应该向您显示
mod_rewrite
用于替换的值。