大型网站核心技术页面静态化_第1页
大型网站核心技术页面静态化_第2页
大型网站核心技术页面静态化_第3页
大型网站核心技术页面静态化_第4页
大型网站核心技术页面静态化_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

为大型网站提速

--页面静态化讲师:韩顺平

学习内容主讲:韩顺平页面静态化基本概念页面静态化好处是什么?php如何实现页面静态化页面静态化实例-新闻管理系统明确几个重要概念主讲:韩顺平静态网址:纯静态HTML文档动态网址:内容存于数据库中,根据要求显示内容,URL中以?#&显示不同的参数,如:news.php?lang=cn&class=1&id=2伪静态网址:伪静态仅仅是对动态网址的一个重写,伪静态网址不能让动态网址“静态化”,搜索引擎不会认为伪静态就是HTML文档。其次,伪静态可取,但应把重心放在去除冗余参数、规范URL、尽可能的避免重复页上。举例说明:这是一个动态网址news.php?lang=cn&class=1&id=2,从seo的角度来看,最好重写为news-cn-class1-id2.html。这样的也更加有效的防止sql注入攻击☞但是也不要精简重写为news-2.html,这样简写同样不利于搜索引擎优化.页面静态化概念 主讲:韩顺平■页面静态化概念我们大多数情况下是直接访问php文件,php脚本在服务器端执行并返回信息,对于一些大型的网站,访问量很大,频繁的动态操作和操作数据库会加重服务器的负担.在实际开发中,通常使用缓存技术或者页面静态化来解决页面静态化分为:①真静态②伪静态页面静态化的必要性1 主讲:韩顺平我们看一个实际问题?使用apache提供的benchmarkingtool来测试下面的两个程序,看看访问各种访问的时间是怎样的?apache/bin/ab.exe程序可以来做效率测试基本使用:ab[options][http[s]://]hostname[:port]/pathoptions是选项:-n执行访问次数-c用户并发数量for($i=0;$i<100;$i++){echo"$i";}直接使用html输出for循环的信息.01......99页面静态化的必要性1 主讲:韩顺平页面静态化的必要性2 主讲:韩顺平从seo的角度来,google,baidu更偏好静态网址(伪静态网址),比如:news.php?lang=cn&class=1&id=2这样的动态网址,不如news-cn-class1-id2.html,这样的格式.从安全的角度来看news-cn-class1-id2.html更不容易被sql注入攻击。页面静态化(真静态)--原理示意图

主讲:韩顺平简单的说:页面静态化技术就是要把php->html直接访问,从而减少对数据库的操作,达到提供访问速度[示意图]基本流程是:1.创建模板文件model.html2.通过模板文件,创建静态页面的php文件xx.php3.用户访问生成的静态页面xx.html快速入门案例(根据模板生成静态页面)数据库和页面静态化(真静态)结合

主讲:韩顺平静态页面通常和数据库应用有关联,我们以一个实际的新闻管理系统来看看它们是如何结合的:我们看看下面的几个页面用传统的方法是怎样处理的?数据库和页面静态化(真静态)结合

主讲:韩顺平使用静态页面技术如何处理,在添加新闻的时候完成两件事情:①添加数据到数据库②同时生成对应的新闻详细信息显示静态页面数据库和页面静态化(真静态)结合

主讲:韩顺平静态页面内容的修改如何处理?页面静态化(真静态)的优点和缺点

主讲:韩顺平html静态页(真静态)的好处有三点;一是减少服务器对数据响应的负荷,二是加载不用调动数据库,响应速度快。三是便于优化引擎。

缺点也有三点:一是维护不方便,每次都要手动生成。三是空间占用比较大。三是生成的文件多了,服务器对html文件的响应负担也较重。

伪静态介绍1主讲:韩顺平比如这个网页

其实处理的脚本是content.php参数为1,122,8912

相当于content.php?a=1&b=122&c=8912只不过这样的URL太难记。搜索引擎也不喜欢。

真静态只是完全生成了HTML。

客户端访问的时候直接输出。不用脚本解释。在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果。也就是说服务器端实实在在的存在这个HTML页面。

当然在你网站的流量没有那么大的时候。URL重写是最好的方法(如果访问量很大,还可以考虑负载均衡)

URL重写的方法有很多种,APACHE(rewrite),IISREWRITE。PHP脚本直接处理。我们先讲解如何使用PHP脚本直接处理。伪静态介绍2主讲:韩顺平下面以程序为例讲一下PHP伪静态的程序实现方法

程序为例:

<?php

//利用server变量取得PATH_INFO信息该例中为/1,122,8912.html也就是执行脚本名后面的部分

if(@$path_info=$_SERVER["PATH_INFO"]){

//正则匹配一下参数

if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){

$gid=intval($arr_path[1]);//取得值1

$sid=intval($arr_path[2]);//取得值122

$softid=intval($arr_path[3]);//取得值8912

}elsedie("Path:Error!");

}elsedie('Path:Nothing!');

?>伪静态介绍3主讲:韩顺平下面以程序为例讲一下另外一种形式的PHP伪静态的程序实现方法程序为例:

实现上面形式的伪静态当然可以通过php程序的正则表达式来实现,我们使用另外一种方式,通过apache的rewrite机制来实现.伪静态介绍3主讲:韩顺平下面以程序为例讲一下另外一种形式的PHP伪静态的程序实现方法

程序为例:

实现上面形式的伪静态当然可以通过php程序的正则表达式来实现,我们使用另外一种方式,通过apache的rewrite机制来实现.1.检测Apache是否支持mod_rewrite通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“LoadedModules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。如果没有开启“mod_rewrite”,则打开目录您的apache安装目录“/apache/conf/”下的httpd.conf文件,通过Ctrl+F查找到“LoadModulerewrite_module”,将前面的”#”号删除即可。如果没有查找到,则到“LoadModule”区域,在最后一行加入“LoadModulerewrite_modulemodules/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。伪静态介绍4主讲:韩顺平2.让apache服务器支持.htaccess如何让自己的本地APACHE服务器支持”.htaccess”呢?其实只要简单修改一下apache的httpd.conf设置就可以让APACHE支持.htaccess了。打开httpd.conf文件(在那里?APACHE目录的CONF目录里面),用文本编辑器打开后,查找<Directory/>OptionsFollowSymLinksAllowOverrideNone</Directory>改为<Directory/>OptionsFollowSymLinksAllowOverrideAll</Directory>就可以了。伪静态介绍4主讲:韩顺平3.建立.htaccess文件如果在linux下可以直接创建,如果是在windows平台下,用记事本创建一个文件,比如abc.txt,然后另存为.htaccess文件即可伪静态介绍4主讲:韩顺平4.rewrite规则介绍我们新建一个.htaccess文件之后,就在里面写入以下内容:RewriteEngineon#rewriteengine为重写引擎开关on为开启off为关闭快速入门案例:RewriteRule([0-9]{1,})$index.php?id=$1我讲解一下RewriteRule:RewriteRule是重写规则,支持正则表达式的,上面的([0-9]{1,})是指由数字组成的,$是结束标志,说明是以数字结束!现在我们可以实现伪静态页面了,我们希望把用户输入的ulr重新被apache替换成这个规则应当怎样写?5.在.htaccess目录下创建一个index.php看看能否得到apache改写后的url$_GET['action']=>view$_GET['id']=>23伪静态介绍主讲:韩顺平url重写(伪静态)的好处:一,可以方便的实现对化化引擎的优化,并且比生成静态更加方便。二、占空间比较小。三、首页每天都自动变化,不用维护。网站首页一般都有热点排行之类的,你可以设为,24小时排行,一周排行,再加上最新文章,最新点评等。这样首页天天是有变化的。四,便于广告的轮显。比如:你可以把art1234.php,这个虚成n个页,如art_1234.php,news_1234.php,top_1234.php,在不同的页面放不同的广告.总之是动态的,你就可以随意动。

url重写的缺点:我看只有一个,那就是效率不如生成html的,因为它不是真正意义上的静态页,每次请求是要读取数据库的。但你可以用缓存技术来补偿一下。真静态和伪静态的选择

主讲:韩顺平①真静态访问效率高,利于seo.可以减少对数据库的操作。但是会占用大量的磁盘.②伪静态一、可以方便的实现对搜索引擎的优

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论