您的位置 首页 php

如何做URL静态化 和页面的静态化

为什么要进行URL静态化?

1、更好的迎合搜索引擎工作原理的爬行抓取机制;

2、把网站URL静态化更有助于网站获得好的排名;

3、URL静态化有利于用户体验、不容易出错

4、可以提高网站访速度、完全性、稳定性

URL重写

最常见的方法是使用服务器的URL重写模块,在LAMP (Linux十Apache MySQL PHP)服务器上一般使用mod_rewrite模块,Windows服务器也有功能相似的ISAPI Rewrite等模块。

以LAMP服务器为例,要想把URL转化为静态化

需要启用服务器mod_rewrite模块,然后在.htaccess文件中写入如下代码:

RewriteRule /products/([0-9] ) /products.php?id=$1

URL重写代码基于正则表达式,每个网站的动态URL结构不同,服务器设置也可能不同,代码也就不同。正则表达式的写法比较复杂,千变万化,通常需要程序员编写。在写URL静态化代码时必须非常小心,错了一个字符,多了一个斜杠等微小的不同,都可能造成灾难性的后果。

注意:

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

2,Wordpress程序URL静态化的方法:

3,如何实现动态url向静态url转换

页面静态化:

利用PHP模板生成静态页面

PHP模板实现静态化非常方便,比如安装和使用PHP Smarty实现网站静态化。

在使用Smarty的情况下,也可以实现页面静态化。下面先简单说一下使用Smarty时通常动态读取的做法。

一般分这几步:

1、通过URL传递一个参数(ID);

2、然后根据此ID查询数据库;

3、取得数据后根据需要修改显示内容;

4、assign需要显示的数据;

5、display模板文件。

Smarty静态化过程只需要在上述过程中添加两个步骤。

第一:在1之前使用 ob_start() 打开缓冲区。

第二:在5之后使用 ob_get_contents() 获取内存未输出内容,然后使用fwrite()将内容写入目标html文件。

根据上述描述,此过程是在网站前台实现的,而内容管理(添加、修改、删除)通常是在后台进行,为了能有效利用上述过程,可以使用一点小手段,那就是Header()。具体过程是这样的:在添加、修改程序完成之后,使用Header() 跳到前台读取,这样可以实现页面HTML化,然后在生成html后再跳回后台管理侧,而这两个跳转过程是不可见的。

文章来源:智云一二三科技

文章标题:如何做URL静态化 和页面的静态化

文章地址:https://www.zhihuclub.com/76976.shtml

关于作者: 智云科技

热门文章

网站地图