0

我最近开始了一个新网站,为了保持链接干净,我想重写 url。
我需要像这样重写链接:

www.domain.com/post.php?post=15

www.domain.com/post/15



www.domain.com/user.php?user=USERNAME

www.domain .com/user/USERNAME

我曾经将链接从 www.domain.com/page.php?page=PAGE 更改为 www.domain.com/PAGE ,但这次我需要“post”和“user”才能正常工作,但我不能很清楚。
有人可以帮我提供有关如何执行此操作的提示吗?
提前谢谢你
克里斯

在 Jon Lin 的帮助下解决了。他的回答很好。

4

2 回答 2

1

您需要正则表达式中的“/”才能使其工作。但是如果你的链接是相对的,浏览器会尝试解析它们http://domain.com/page/some.css而不是http://domain.com/some.css. 您需要将此添加到所有页面的顶部:

<base href="/">

或者你所有相关链接的基础应该是什么。你的规则应该是这样的:

RewriteRule ^post/([^/]*)$ /post.php?p=$1 [L]
RewriteRule ^user/([^/]*)$ /user.php?p=$1 [L]

这应该重写像http://www.domain.com/post/15http://www.domain.com/user/USERNAME

于 2012-04-27T16:09:05.373 回答
0

尝试研究一些 PHP 框架。他们将帮助您做到这一点,并帮助您保持代码更清洁和更易于管理

于 2012-04-26T22:29:58.987 回答