在PHP中实现永久链接的有效方法

时间:2009-08-12 09:06:23

标签: php database url rewrite title

实现php驱动的永久链接的最有效方法是什么?

基本上我想将数据库访问减少到最低限度。

重定向到存储在数据库中的ID的最佳方法是什么?

2 个答案:

答案 0 :(得分:8)

你可以像SO那样使用基于数据库ID的网址:

http://stackoverflow.com/questions/1265061/efficient-way-to-realize-permalinks-in-php

http://stackoverflow.com/questions/1265061

都去了同一个地方。

这通常是通过某种mod_rewrite从.htaccess重定向到你的php文件来完成的。

RewriteRule ^/questions/([0-9]+)/?.*$ /questions.php?id=$1

重写规则会丢弃ID之后的所有内容 - 因此您甚至可以转到

http://stackoverflow.com/questions/1265061/not-the-questions-title-anymore

你仍然到达目的地。当你在php中生成链接时,你会想要将“标题slu”添加到被“链接”的实际URL中 - 这将提高你的搜索引擎友好性......

答案 1 :(得分:0)

使用简单的URL-to-ID映射根据URL检索ID:

+----------+----+
| URL path | ID |
+----------+----+
| /foo     | 1  |
| /bar     | 2  |
| /bar/baz | 3  |
| …        | …  |
+----------+----+