php-重写URL以隐藏查询字符串

我正在尝试屏蔽我的页面的查询字符串,以隐藏其唯一的页面ID.这很重要,因为每个ID对于用户而言必须是唯一的.

当前,URL结构如下所示:

http://domain.com/page.php?Page_ID=1234
(其中1234是任何数字)

但我需要它看起来像这样:

http://domain.com/page.php

我尝试将以下内容添加到.htaccess文件中,但似乎没有什么区别:

RewriteEngine on
RewriteBase /
RewriteRule ^page.php?Page_ID=([0-9]+)/$page.php [L,QSA,NC]

我看过其他帖子,例如this one和其他帖子,但似乎找不到解决方案.我这里可能缺少什么吗?

解决方法:

查询字符串不是重写规则中匹配项的一部分,您需要使用rewriteCond与%{THE_REQUEST}进行匹配

RewriteEngine on


RewriteCond %{THE_REQUEST} /page\.php\?page_ID=.+ [NC]
RewriteRule ^ %{REQUEST_URI}? [L,R]
上一篇:PHP-需要为目录页面编写htaccess规则


下一篇:php-.htaccess中的RewriteRule有问题