我想在我的帖子的url中用斜线替换掉?id=和.php。
我试过很多其他问题的答案,但对我来说并不奏效,就像这个----。
Example Url -
https://example.com/testing/events/news/post.php?id=13/Checking-to-see-if-this-works
我希望这个例子的网址是这样的
https://example.com/testing/events/news/post/13/Checking-to-see-if-this-works
我使用了下面的htaccess代码,它从url中删除了.php的扩展名,但不知道如何将 "id="替换为 "id="。
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]
产出 -
https://example.com/testing/events/news/post?id=13/Checking-to-see-if-this-works
我还是不能用 "id="取代 "id="。
谢谢你的帮助:)
你可以在你的网站根目录下的.htaccess中使用这些规则。
Options -MultiViews
RewriteEngine On
# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} \s/+(testing/events/news/post)\.php\?id=([^\s&]+) [NC]
RewriteRule ^ /%1/%2? [R=301,L,NE]
# internal forward from pretty URL to actual one
RewriteRule ^(post)/(.+)/?$ $1.php?id=$2 [L,QSA,NC]
# add .php extension
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]