0

.htaccess 文件位于我的本地计算机中,路径为 localhost/test/

如何编写重定向网址,例如

localhost/test/errorsample

localhost/test/index.php?req_dir=$var

在我的 index.php

<?php
    echo ($_GET['req_dir']);
?>

所以它应该显示errorsample

4

1 回答 1

1
RewriteRule ^test/(.*)$ /test/index.php?req_dir=$1 [L,QSA]

但这取决于 .htaccess 文件中的其他规则,因此在您的情况下,如果不更改其他规则,它可能无法正常工作。

规则解释:(.*)匹配之后的所有内容,test/并被捕获到重写变量$1中。

如果您想要 302 重定向(即服务器告诉浏览器改用不同的文件),请[L,R,QSA]改用。通常重写比重定向更好,因为重定向会在地址栏中显示重写的 url。如果您担心规范页面(一种 SEO 技术),则 302 重定向到规范页面比直接重写要好。

于 2012-10-01T09:00:58.897 回答