如果我有一个动态页面,它接受一个像 example.com/posts.php?id=2 这样的 id 参数,我如何在 htaccess 中创建一个 RewriteRule,以便 url 显示帖子的标题而不是它的 id,因此,例如posts.php?id=2 显示标题为“PHP 很酷”的帖子,我希望将url 重写为example.com/2/php-is-cool 或类似的东西?如果标题值存储在 MySQL 数据库中,这可能吗?
附加信息:
这就是我的 htaccess 的样子:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^mydomain\.com$
RewriteRule (.*) http://www.mydomain.com/$1 [R=301,L]
ErrorDocument 404 /index.php
ErrorDocument 403 /index.php
php_value post_max_size 20M
基本上,我有一个 MySQL 数据库,它将博客文章存储在一个名为 posts 的表中。posts 表有一个 id 属性(即自增主键)、一个 title 属性和一个 content 属性。当我访问 mydomain.com/posts.php?id=X 时,它会在网页上的数据库中显示我的帖子,其 id 为“X”。我只是希望能够重新编写 URL,以便它显示页面的标题。我这样做主要是为了 SEO,而不是美学。这可能使用 htaccess,还是我必须以不同的方式处理?