2016-06-08 60 views
0

我有以下结构:友好的URL和?标签

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

,我可以得到我的名为“交谈”的URL页面:

site.com/page/talk 
site.com/page/talk/ 

那好吧,但我想dinamically增加一些选项和我不想创建更多的重写规则,我想在同一链接中使用正常的GET,例如:

site.com/page/talk/?fontsize=15 

我该怎么做?

还有,有没有什么办法可以使用下面的东西?

RewriteRule ^pages/order-([a-z0-9-]+)/?$ pages.php?order=$1 [NC,L] 

我试过了,但是没能做到。

谢谢。

回答

1

对于第一部分,您可以将原始查询字符串与新查询字符串合并。不幸的是,由于所述查询字符串的布局方式,这必须在单独的规则中完成。在其他消息中,你的正则表达式似乎有点畸形。这里是新的:

RewriteRule ^page(?:/([a-z0-9\-]+))?/?$ page.php?pagename=$1 [NC,L] 
RewriteRule ^page(?:/([a-z0-9\-]+))?/?\?(.*)$ page.php?pagename=$1&$2 [NC,L] 

看看前两个如何合并成一个?

+0

我可以看到它合并,但我用我的Xampp进行了测试,它不起作用。找不到请求的URL/page/pagenametwo /在此服务器上找不到。 Apache/2.4.9(Win64)PHP/5.5.12服务器在本地主机端口80 –

+0

我忘了一些事情。现在应该工作。 – RamenChef

+0

仍在此服务器上未找到请求的URL/revenda/page/pagename。 ' - ' –