【发布时间】:2011-01-28 01:22:43
【问题描述】:
我们的客户要求我将我们创建的网站转换为 SEO 友好的 url 格式。我已经设法解决了这个问题,但是遇到了在同一个文件夹中拥有相同网址的问题。
我正在尝试重写以下网址,
- /review/index.php?cid=intercasino
- /review/submit.php?cid=intercasino
- /review/index.php?cid=intercasino&page=2#reviews
我想让他们去,
- /review/intercasino
- /submit-review/intercasino
- /review/intercasino/2#reviews
我几乎可以使用以下规则使其正常工作,
RewriteRule (submit-review)/(.*)$ review/submit.php?cid=$2 [L]
RewriteRule (^review)/(.*) review/index.php?cid=$2
您可能已经看到,问题是 /submit-review 重写为 /review,而 /review 又被重写为 index.php,因此我的评论提交页面丢失了我的索引页面。我认为放置 [L] 会阻止调用第二条规则,但它似乎在两个单独的通道中重写了两个 url。我也试过 [QSE] 和 [S=1]
我宁愿不必将我的文件移动到不同的文件夹来进行重写,因为这似乎太糟糕了。如果有人能给我一些关于如何区分这些相似网址的指示,那就太好了!
谢谢 (参考:http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html)
【问题讨论】:
标签: apache mod-rewrite