通过.htaccess扩展重写规则以在查询字符串中包括分页字段和值

通过.htaccess扩展重写规则以在查询字符串中包括分页字段和值,.htaccess,.htaccess,我在一个网站上有一个页面,它根据从数据库中提取的记录显示图像。页面为此使用查询字符串,如下所示: www.example.com/category.php?category=cars www.example.com/category/cars 但是我想在浏览器中有一个“漂亮”的地址,看起来像这样: www.example.com/category.php?category=cars www.example.com/category/cars 因此,我将此指令放在root.htaccess

我在一个网站上有一个页面,它根据从数据库中提取的记录显示图像。页面为此使用查询字符串,如下所示:

www.example.com/category.php?category=cars
www.example.com/category/cars
但是我想在浏览器中有一个“漂亮”的地址,看起来像这样:

www.example.com/category.php?category=cars
www.example.com/category/cars
因此,我将此指令放在root.htaccess文件中:

RewriteEngine on
RewriteRule ^category/(\w+)/?$ category.php?category=$1
这就成功了:现在,链接到:

www.example.com/category/cars
www.example.com/category/cars/9
。。。获取本应由以下人员获取的页面内容:

www.example.com/category.php?category=cars
(后一个原始查询字符串版本仍然有效)

但是现在我想在category.php中引入分页,这样它将包含两个查询字符串:“category”(和以前一样)和现在的“page”

我的问题是,我如何修改/扩展.htaccess指令,以便链接到:

www.example.com/category/cars
www.example.com/category/cars/9
。。。获取以下内容的输出:

www.example.com/category.php?category=cars&page=9
此外,如果站点访问者手动更改了明显显示为页码的内容,那么这样的重写扩展是否可以工作,比如:

www.example.com/category/cars/9
致:

。。。该地址将实际获取相应的“页面”:

(如果按照分页存在)?

请参见:


并把一个空页面当作第一页,例如

我似乎没有成功地从那个帖子中应用例子。查询字符串页面的格式是
www.example.com/category.php?category=cars&page=3
字段将始终是“category”和“page”-只是它们的值会改变。RewriteRule([^/]+)/([0-9]?)index.php?category=$1&page=$2Tiago-非常感谢您的评论和帮助,但我在描述我需要的内容时犯了一个愚蠢的错误。实际上,我需要.htaccess指令才能工作,这样一个指向
www.example.com/cars/9
的链接就能获取
www.example.com/category.php?category=cars&page=9
的输出。(换句话说,我不需要“pretty”链接来包含
/category/
部分。)我为混淆道歉。这能做到吗?谢谢。顺便说一下,我只希望重写规则适用于category.php页面。