美化 url 从 art.php?id=51 到 art/51

beautify url from art.php?id=51 to art/51

想美化一个url来自:
https://abuena.net/art.php?id=51

https://abuena.net/art/51

下面是我的尝试,没有成功,直接忽略

RewriteEngine on
RewriteRule ^([a-zA-Z0-9_]+)$ // [R]
RewriteRule ^([a-zA-Z0-9_]+)/$ /art.php?id=

我的托管服务提供商说我的服务器不是 Apache 而是 LSWS - LiteSpeed WebServer - 这可能是我的语法问题。

有什么帮助吗?

能否请您尝试以下。考虑到您需要在浏览器中点击 URL 之类的 https://abuena.net/art/51。请确保在测试您的 URL 之前清除您的浏览器缓存。

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/(.*)/?$ .php?id=


编辑: 如果您在浏览器中点击 URL 之类的 https://abuena.net/art.php?id=51 然后尝试以下操作一次.

RewriteEngine ON
RewriteCond %{REQUEST_URI} \s/([^.]*)\.php\?id=(\d+)\s [NC]
RewriteRule ^ http://%{HTTP_HOST}/%1/%2 [R=301]
RewriteRule ^([^/]*)/(.*)/?$ .php?id= [L]