0

我想知道如何在目录作为参数附加的地方进行目录重写,而不管剩余的url如何。

例如,如果我有这样的网址:

example.com/peter/lois/stewie.php
example.com/peter/lois/brian.php?drinks=martinis
example.com/peter/lois/quagmire/meg.php

我需要他们重写

example.com/lois/stewie.php?person=peter
example.com/lois/brian.php?drinks=martinis&person=peter
example.com/lois/quagmire/meg.php?person=peter

我该怎么做呢?

谢谢!

编辑

所以我在站点可用文件中像这样实现它:

RewriteRule ^/([a-z0-9]+)/lois(.*) /lois$2?person=$1 [QSA,L]

但不是像返回

example.com/lois/stewie.php?person=peter

它回来了

example.com/peter/lois/stewie.php?person=peter

所以它将参数放在 url 的末尾,就像它应该的那样,但它不会删除早期的目录。

4

1 回答 1

0

mod_rewrite 可以很好地解决这个问题:

RewriteEngine on
RewriteRule ^([a-z0-9]+)/(.*\.php) /$2?person=$1 [QSA,L]
于 2013-08-09T22:13:41.147 回答