【发布时间】:2021-05-14 10:01:03
【问题描述】:
我正在尝试将 user/John-Doe 重写为 user?name=John-Doe 并在 .htaccess 中使用 mod_rewrite。我的 .htaccess 与我正在重写/重定向的文件位于同一目录中。这是 htaccess:
RewriteEngine on
RewriteRule ^user/(\w+)/?$ user?name=$1
现在我没有收到来自 $_GET['name'] 的任何数据并且 var_dump($_GET) 是空的。
【问题讨论】:
-
\w不匹配连字符,你需要[\w-] -
您的文件中是否还有其他规则,或者只有这个?请确认一次。
-
user是能够运行 PHP 的脚本吗?不应该是user.php?name=$1吗? -
@WiktorStribiżew 感谢它在本地服务器上工作,但是一旦我将它上传到我的虚拟主机,每个都会出现 404 错误
-
@RavinderSingh13 还有其他规则但不在此文件中。
标签: php regex .htaccess mod-rewrite