分享

php如果实现链接url静态化

 Alkaid2015 2013-11-02
学过php的朋友,你会发现最简单最方便的的一种方法是使用服务器的URL重写模块,在LAMP(Linux+Apache+MySQL+PHP)服务器上一般使用mod_rewrite模块,Windows服务器也有功能相似的ISAPI Rewrite等模块。以LAMP服务器为例,要想把URL:
http://www./show.php?id=123
静态化为:
http://www./show/123
需要启用服务器mod_rewrite模块,然后在.htaccess文件中写入如下代码:
RewriteRule/products([0-9]+)/show.php?id=$1
URL重写代码基于正则表达式,每个网站的动态URL结构不同,服务器设置也可能不同,代码也就不同。正则表达式的写法比较复杂,千变万化,通常需要程序员编写。在写URL静态化代码时必须非常小心,错了一个字符,多了一个斜杠等微小的不同,都可能造成灾难性的后果。我本人就遇到过这样的案例。

严格来说,这里所说的URL静态化应该称为“伪静态化”,也就是说服务器上还是不存在相应的HTML文件,用户访问时还是动态生成页面,只不过通过URL重写技术使网址看起来像是静态的。也有的CMS系统可以实现真正静态化,站长增添产品或文章后,系统会自动生成真实存在的静态的HTML文件。对搜索引擎来说,真正的静态与伪静态没有区别。

在这里有些朋友又问了,那静态化和伪静态有什么优点和缺点?其实每一种好的方案,都不可能是完美的,比如静态化生成html文件,如果很多文章,那么就生成很多html文件了,但是优势就是不需要查询数据库,加快了访问速度,伪静态就是使用方便,新手学习一下就可以上手了,但是相对前者而言,需要查询数据库,稍微慢一点咯!

 

在这里笔者随便提醒大家,实现页面链接静态化,对搜索引擎还是比较有优势的,防止重复收录,收录更为方便!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多