如何从 URL 中删除参数

How to remove parameter from URL

如果之前有人问过这个问题,我深表歉意,但我找不到我的问题的具体实例。

如何实现 www.example.com/index.php?user=johnwww.example.com/john

我已经在使用它来删除 .php 扩展,但它没有修复用户参数。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ .php [NC,L]
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/ [R,L]
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ https://www.example.com/ [L,R]

ErrorDocument 404 /error.php

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/([A-Za-z0-9_]+) ?user=

我非常重视任何回复。请帮忙。

根据您显示的尝试,请尝试遵循 htaccess 规则。考虑到您必须将参数传递给后端的 index.php 文件。

另外,请确保在测试您的网址之前清除浏览器缓存。

RewriteEngine ON
##External redirect rules here.
RewriteCond %{THE_REQUEST} \s/index\.php\?user=(\S+)\s [NC]
RewriteRule ^ /%1? [R=301,L]

##Internal rewrite rules here..
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/?$ index.php?user= [QSA,L]