Mod Rewrite - 隐藏.php,隐藏可选的查询字符串

时间:2011-08-10 01:37:58

标签: mod-rewrite

我想出了如何隐藏.php,但是我需要在URL上隐藏任何查询字符串,并提供没有的查询字符串。

这是我目前的规则:RewriteRule ^/?([a-z]+)$ $1.php

我到处搜索,但无济于事。

1 个答案:

答案 0 :(得分:0)

假设您有一个页面显示来自某种查找的项目。所以请求的资源是www.example.com/page.php?display=news。

在这种情况下,您可以使用类似RewriteRule ^/news/$ page.php?display=news的内容。这样您就可以为不同的资源创建友好的URL,这些资源可能需要传入查询字符串值。

让我们说你想要这个通用。所以显示可以有价值新闻,关于,公司映射到网址/新闻/ /关于/ /公司/然后你只需将你的规则改为

RewriteRule ^/([^/]+)/?$ page.php?display=$1

您还可以使用第二种方法将购物车系统的网址更改为友好网址。假设您的购物车使用查询字符串,例如 - shop.php?category = 1& product = 10。您可以将其转换为商店/类别/ 1 / product / 10等网址。规则是

RewriteRule ^shop/category/([^/]+)/product/([^/]+)$ shop.php?category=$1&product=$2