0

我想使用 htaccess 从 url 中删除 get 方法

坏网址:mysite.com/index.php ?sub=usr1
好网址:mysite.com/urs1

我怎样才能做到这一点?

4

1 回答 1

1

像这样的东西应该工作:

<Location /index.php?sub=usr1>
Order Allow,Deny
Deny from all
</Location>

虽然可能有一些更好的解决方案,但我试图避免mod_rewrite.

请注意,如果需要,这将允许您将特定 IP 列入白名单。这是一个基本块,如果您要阻止特定参数的所有值,那么显然需要不同的代码,所以请澄清。

编辑:经过一些澄清后,我想出了这个:

RewriteEngine on
RewriteBase /
RewriteRule ^([^./]+)$ index.php?sub=$1 [L,QSA,NC]

我认为这很好,但我不确定,将等待一些反馈。我的想法是它会获取该值,然后将其替换为根 URL(example.com/$1,其中 $1 是您的 GET 参数值)。

于 2018-05-16T15:24:23.857 回答