php抓取网页连接函数(纯静态网站在网站中是怎么实现的?(组图))

优采云 发布时间: 2022-03-30 03:23

  php抓取网页连接函数(纯静态网站在网站中是怎么实现的?(组图))

  随着网站内容的增加和用户访问量的增加,网站的加载也难免会越来越慢。由于带宽和服务器同时发出的请求数量的限制,我们这个时候往往需要优化我们的网站代码和服务器配置。

  一般会从以下几个方面进行优化

  现在很多网站在构建的时候都需要静态处理,为什么网站要静态处理呢?我们都知道纯静态网站就是所有的网页都是独立的html页面。我们访问的时候可以直接读取文件,无需数据处理,访问速度可想而知。而且对于搜索引擎来说也是一种非常友好的方式。

  网站 中的纯静态 网站 是如何实现的?

  纯静态制作技术需要先把网站的页面汇总,分成多少种样式,然后把这些页面做成模板。生成的时候需要先读取源文件,再生成以.html结尾的独立文件,所以纯静态网站需要的空间比较大,但实际上需要的空间并不多,尤其是中小型——大企业网站,从技术上讲,大网站很难做到全站纯静态,生成时间太长。不过中小网站还是做纯静态比较,有很多好处。

  动态 网站 是如何静态处理的?

  页面静态是指将动态页面变成html/htm静态页面。动态页面一般都是用asp、php、jsp、.net等编程语言编写的,非常好管理。但是在访问网页时,需要先处理程序,所以访问速度比较慢。静态页面访问速度快,但不易管理。那么动态页面静态可以将两个页面的好处结合在一起。

  静态处理给网站带来什么好处?

  静态处理的网站比没有静态处理的网站更安全,因为静态网站不是黑客攻击的首选,因为黑客不知道你的后台情况系统,黑客很难从前台的静态页面进行攻击。同时,它也具有一定的稳定性。比如网站的数据库或者程序有问题,不会干扰静态处理的页面,不会因为程序或者数据的影响而无法打开页面。

  搜索引擎蜘蛛更喜欢这样的网址,这样也可以减少蜘蛛的工作量。虽然有些人认为搜索引擎现在已经完全具备抓取和识别动态 URL 的能力,但还是建议您制作静态 URL。使其尽可能静态。

  下面我们主要谈谈页面静态的概念,希望对你有所帮助!

  什么是 HTML 静态:

  常说的页面静态分为两种,一种是伪静态,即url重写,另一种是真静态。

  在PHP网站的开发中,为了网站推广和SEO的需要,网站需要对整个站点或部分站点进行静态处理。用PHP生成静态HTML页面的方法有很多,比如使用PHP Templates、缓存等实现页面静态。

  PHP静态的简单理解就是让网站生成的页面以静态HTML的形式出现在访问者面前。PHP静态分为纯静态和伪静态。两者的区别在于PHP生成静态页面的处理机制不同。.

  PHP 伪静态:一种使用 Apache mod_rewrite 重写 URL 的方法。

  静态 HTML 的好处:

  一、减轻服务器负担,浏览网页不调用系统数据库。

  二、有利于搜索引擎优化SEO,百度和谷歌会优先考虑收录静态页面,不仅比收录快,而且充满收录;

  三、为了加快页面打开速度,在不连接数据库的情况下,静态页面的打开速度明显高于动态页面;

  四、网站更安全,HTML页面不会受到php程序相关漏洞的影响;注意较大的网站基本上都是静态页面,可以减少攻击,防止SQL注入。当数据库发生错误时,不会影响网站的正常访问。

  五、数据库出错不会影响网站的正常访问。

  最重要的是提高访问速度,减轻服务器负担。当数据量是几万、几十万甚至更多时,你知道哪个更快。而且很容易被搜索引擎找到。生成html文章虽然操作比较麻烦,程序也比较复杂,但是为了更利于搜索,更快更安全,这些牺牲都是值得的。

  实现 HTML 静态的策略和示例:

  基本方式

  file_put_contents() 函数

  使用 PHP 内置的缓存机制来实现页面静态 - 输出缓冲。

  方法一:使用PHP模板生成静态页面

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

  在使用Smarty的情况下,也可以实现静态页面。下面简单说一下使用Smarty时常用的动态阅读。

  一般分为这几个步骤:

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

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

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

  4、分配要显示的数据;

  5、显示模板文件。

  Smarty 的静态化过程只需要在上述过程中增加两步即可。

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

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

  根据上面的描述,这个过程是在网站的前台实现的,而内容管理(添加、修改、删除)通常是在后台进行的。)。具体流程如下:添加修改程序后,使用Header()跳转到前台读取,这样页面就可以进行HTML化,生成HTML后再跳转回后台管理端,这两个跳跃过程是看不见的。

  方法二:使用PHP文件读写函数生成静态页面

  方法三:使用PHP输出控制函数(Output Control)/ob缓存机制生成静态页面

  输出控制函数(Output Control)是使用和控制缓存生成静态HTML页面,也使用PHP文件读写函数。

  例如某商品的动态详情页地址为:

  然后这里我们根据这个地址读取一次详情页的内容,然后保存为静态页。下次有人访问商品详情页的动态地址,我们可以直接输出对应的已经生成的静态内容文件。

  PHP生成静态页面示例代码1

  PHP生成静态页面示例代码2

  我们知道 PHP 用于 网站 开发。一般执行结果直接输出到浏览器。为了使用PHP生成静态页面,需要使用输出控制函数来控制缓存区,从而获取缓存区的内容,然后输出到静态页面。HTML页面文件实现网站静态。

  PHP生成静态页面的思路是:先打开缓存,然后输出HTML内容(也可以通过include将HTML内容以文件的形式收录进去),然后获取缓存中的内容,清空缓存,并使用PHP文件读写函数对内容进行读写。缓存的内容被写入静态 HTML 页面文件。

  获取输出缓存内容生成静态HTML页面的过程需要用到三个函数:ob_start()、ob_get_contents()、ob_end_clean()。

  知识点:

  1、ob_start函数一般用于打开缓存。注意在使用ob_start之前不能有任何输出,比如空格、字符等。

  2、ob_get_contents 函数主要用于获取缓存中的内容,并将其作为字符串返回。注意该函数必须在ob_end_clean函数之前调用,否则无法获取缓存内容。

  3、ob_end_clean函数主要是清除缓存中的内容并关闭缓存,成功则返回True,失败则返回False

  方法四:使用nosql从内存中读取内容(其实这不是静态的而是缓存的);

  以memcache为例:

  Memcached 是键和值之间的一一对应关系。密钥的默认最大大小不能超过 128 字节。该值的大小默认为1M,所以1M的大小可以满足大部分网页的存储。

  以上就是PHP中静态化HTML页面的方法。内容丰富,值得细细品味和收获。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线