【发布时间】:2019-07-08 17:53:06
【问题描述】:
我已激活 URL 重写:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^publisher/([^/\.]+)/?$ /publisher.php?page=$1 [QSA]
我想通过 $_GET 从这个 URL 中获取参数:
https://website.com/publisher/2/
当我执行以下操作时...
$id = $_GET["page"];
echo "ID:". $id;
...我的结果是空的,没有输出
我尝试了以下步骤,其他社区成员已经推荐:
Getting mod_rewrite to pass $_GET params?
为什么我不能在这里上车?提前致谢。
更新:添加后
Options -MultiViews
它工作正常,但现在我有另一个问题:每次我通过链接转到另一个页面时,我都会得到 300:多个选项。 https://website.com/test/ --> 300: /test.php/
【问题讨论】:
-
所以为了清楚起见,您实际上试图禁用 MultiViews,是吗? 向我们展示您到底尝试了什么,不要参考其他问题,只给我们一个“尝试了一切,没有任何效果”——这对于问题描述没有帮助。
-
好的。我的错。我没有将
Options -MultiViews放在顶部。就在其他选项之后。
标签: php .htaccess mod-rewrite parameters url-rewriting