如何编写更改的 htaccess 重写规则 link
How to write htaccess rewrite rule for change link
我正在 htaccess 中搜索更改 link 的规则。
目前 link 看起来像这样:
localhost.com/forum/profile.php?id=1
这是我想要达到的效果:
localhost.com/forum/profile/1
我添加了以下规则:
Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/forum/profile\.php\?id=([0-9]+)\s [NC]
RewriteRule ^ /forum/profile/%1? [R=301,L]
问题是页面自动重定向到预期的 link,但返回 404 错误
您还需要一个规则来将 forum/profile/123
映射到 forum/profile\.php?id=123
。请在测试您的网址之前清除您的浏览器缓存。
Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/forum/profile\.php\?id=([0-9]+)\s [NC]
RewriteRule ^ /forum/profile/%1? [R=301,L]
RewriteRule ^forum/profile/([0-9]+)/?$ /forum/profile.php?id= [NC,QSA,L]
我正在 htaccess 中搜索更改 link 的规则。
目前 link 看起来像这样:
localhost.com/forum/profile.php?id=1
这是我想要达到的效果:
localhost.com/forum/profile/1
我添加了以下规则:
Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/forum/profile\.php\?id=([0-9]+)\s [NC]
RewriteRule ^ /forum/profile/%1? [R=301,L]
问题是页面自动重定向到预期的 link,但返回 404 错误
您还需要一个规则来将 forum/profile/123
映射到 forum/profile\.php?id=123
。请在测试您的网址之前清除您的浏览器缓存。
Options -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/forum/profile\.php\?id=([0-9]+)\s [NC]
RewriteRule ^ /forum/profile/%1? [R=301,L]
RewriteRule ^forum/profile/([0-9]+)/?$ /forum/profile.php?id= [NC,QSA,L]