增强此RewriteRule

时间:2013-10-17 15:48:07

标签: php apache .htaccess mod-rewrite url-rewriting

我正在尝试编写.htaccess的内容,以便进行以下转换:

www.abc.com/page.php?id=1www.abc.com/page/1

所以我尝试使用以下RewriteRule

RewriteRule    ^page/([A-Za-z0-9-]+)/?$    page.php?id=$1    [NC,L]

我想知道,如果page.php需要更多的1个PHP请求,例如idpagenum,甚至3个或更多,那么实现这一点的最佳方式是什么(使用时) BeautifulURL)?

我尝试使用www.abc.com/page/1?pagenum=5,但它不起作用,如你所知。

1 个答案:

答案 0 :(得分:0)

使用类似:www.abc.com/page/1?pagenum=5的网址,您需要QSA标记:

RewriteRule ^page/([A-Za-z0-9-]+)/?$ page.php?id=$1 [NC,L,QSA]

或者pagenum=5不会被添加。此外,您可以像这样查看(可选)URL:

http://www.abc.com/page/1/5

for:/page.php?id=1&pagenum=5使用此规则:

RewriteRule ^page/([A-Za-z0-9-]+)/([0-9]+)/?$ page.php?id=$1&pagenum=$2 [L,NC]

如果你想同时工作,你需要两个规则,最后加上/5,没有它。