深入理解PHP高级技巧、面向对象、核心技术( 读书感)(19.1.14-至今)

1.模块化一个Web网站

     创建配置文件:定义常量、建立站点范围内的设置、创建用户定义函数、管理错误

     例如:判断该脚本运行在测试环境还是真实运行的服务器

    

$host=substr($_SERVER['HTTP_HOST'],0,5);
 
if(in_array($host,array('local','127.0','192.1'))){
	$local=TRUE;
}else{
	$local=FALSE;
}

  索引文件是模块化程序中的主要脚本,事实上它是唯一会被加载进去web浏览器的页面,这种构建方法的结束叫做引到文件,索引页面涉及以下工作:包含配置文件、包含数据库连接文件、合并HTML模板、判断并包含适当的内容模块

   对访问页面的用户进行重定向:

  

$url=BASE_URL.'index.php';
header("Location:$url");
exit;

3.使用mod_rewrite优化SEO(Apache)

   mod_rewrite是一种用于给服务器发送指令的工具,当用户访问一个链接URL的时候,服务器将会提供另外的资源,mod_rewrite使用正则表达式,因此可以根据需求尽量复杂的连接地址模式

    1>修改Apache的全局配置文件或者创建目录相关的文件(httpd.conf),放置在conf目录内,它用于规范这个Apache网站服务器的运行规则   2>一个.htaccess文件放置在Web目录内,它用来规范在当前目录和子目录内Apache如何运行

   优先考虑优化http.conf,这个每次服务器每次启动的时候才会由Web服务器读取,.htaccess可能应用请求发起时都会被Web服务器读取一遍

4.调整浏览器缓存

   利用PHP的header()函数可以调整缓存-包括WEB浏览器的缓存和代理服务的缓存,这里设计4种标头的类型  Last-Modified(最后修改时间)、Expires(过期时间)、Pragma(编译提示)、Cache-Control(缓存控制)

$max取数据库最后更新时间
$interval=60*60*6
header("Last-Modified:".gmdate('r',$max)); //设置脚本的最后修改时间为数据库更新的最后时间
header("Expires:".gmdate("r",($max+$interval)));有效期限是指当前时间加上前面定义的间隔时间
header('Cache-Control:max-age=$interval');等效于1.1Expires标头的设置方式,取代使用一个日期值,这里使用秒数设置变量max-age的值

  

猜你喜欢

转载自blog.csdn.net/ligupeng7929/article/details/86470638