URL重写 - 如何将example.com/pageid.php?id=12转换为example.com/full-title

时间:2009-10-05 21:10:05

标签: php url-rewriting apache2

我想让我的网页搜索引擎更友好, example.com/pageid.php?id=12

我有不同的页面,例如 showUser.php showLocation.php ,我希望所有这些都被重写。

Wo'nt mod_rewrite让我的应用程序慢了一点?

2 个答案:

答案 0 :(得分:3)

您需要查看mod_rewrite(提供主机支持) - 这里是a good blog post on the subject

答案 1 :(得分:2)

在您的特定示例中,mod_rewrite可以设置如下:

# .htaccess
RewriteEngine on
RewriteRule ^/([\w-]+)$ /page.php?title=$1

现在,对/full-title的请求将解析为page.php$_GET['title']将保留值'full-title'

(大多数Web框架(例如Symfony,Django等)都允许使用可自定义的URL路由规则,这些规则不要求您在.htaccess文件中对重写规则进行硬编码。)