摘要:前提服务器(虚拟主机)不支持gzip压缩,那么我们在打开页面的时候会占用很大的流量,并直接导致网页下载速度变慢下面用php自己实现文件的gzip压缩假设有a.html文件<?phpoob_start();$data = file_get_contents('index.html');header('Cache-Control: max-age=43200');header("Expires:...
阅读全文
摘要:cmpan(at)qq.com流水孟春lib.cublog.cn转载请注1.PHP的COOKIEcookie是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。PHP在http协议的头信息里发送cookie,因此setcookie()函数必须在其它信息被输出到浏览器前调用,这和对header()函数的限制类似。1.1设置cookie:可以用setcookie()或setrawcookie()...
阅读全文
摘要:Netstat状态分类 用netstat -an命令查看!再stat下面有一些英文,简单说一下这些英文具体都代表什么:LISTEN:(Listening for a connection.)侦听来自远方的TCP端口的连接请求SYN-SENT:(Active; sent SYN. Waiting for a matching connection request after having sent ...
阅读全文
摘要:这个系列的文章要讨论的是如何通过ASP.net服务器端技术来优化客户端缓存策略,而且让这种策略变得可配置和可扩展。我们要了解的知识从HTTP协议中相关属性对客户端缓存的影响,到ASP.NET如何控制这些属性来实现我们的缓存策略。 HTTP基础知识 由于讨论涉及到客户端缓存,所以还是先要简单介绍一下HTTP协议是如何控制客户端缓存的,这里涉及到HTTP头的Last-Modified、ETag...
阅读全文
摘要:1. ps简介ps命令就是最根本相应情况下也是相当强大地进程查看命令.运用该命令可以确定有哪些进程正在运行和运行地状态、进程是否结束、进程有没有僵死、哪些进程占用了过多地资源等等.总之大部分信息均为可以通过执行该命令得到地.2. ps命令及其参数ps命令最经常使用地还是用于监控后台进程地工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设备进行通信地,所以如果需要检测其情况,便可以运用ps命令...
阅读全文
摘要:收集linux下查看常用apache状态语句:1、查看Apache的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'返回结果一般如下: SYN_RECV 28 CLOSE_WAIT 1 TIME_WAIT 9 ESTABLISHED 4 LAST_ACK 1 FIN...
阅读全文
摘要:配置虚拟主机时,在配置文件中加入如下内容 DocumentRoot /home/img ServerName img.host.com ErrorDocument 404 / RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://img.host.com/.*$ [NC] Rewr...
阅读全文
摘要:配置开机启动服务 /sbin/chkconfig httpd on [设置apache服务器httpd服务开机启动] /sbin/chkconfig --add mysqld [在服务清单中添加mysql服务] /sbin/chkconfig mysqld on [设置mysql服务开机启动] 另外,启动服务的方法 /sbin/service httpd start [启动...
阅读全文
摘要:在fedora下apache默认是安装好的,我们只要直接启动就可以了 启动命令如下:/etc/init.d/httpd start apache的配置和日志目录分别在/etc/httpd/conf和/ect/httpd/logs 我们写的php文件是存放到/var/www/html/下 当我们本地访问没有问题,但是其他机器访问不了的话,一般是防火墙的问题,使用/ect/init.d/ip...
阅读全文
摘要:关于apache的动态与静态编译的理解,引用某人的比喻如下: 好比有两个人a和m,a代表apache,m代表module,要想让a使用m的东西,一个方法是把m的东西都放到a那里去,a使用的时候就是现成的了,就是所谓的静态编译 还有一个方法,就是告诉a,m的住址,当a要使用m的东西的时候,a去找m,然后使用,不过,这种方法要注意的一个问题就是:m必须要有实际的住址,否则a会找不到...
阅读全文
摘要:我们知道在C中,内存的分配和释放都是通过mallloc和free进行的,而对同一块内存的多次释放通常会导致页面错误,而一直不释放又导致内存泄露。为了在大而且复杂的Apache中避免内在的内存管理问题,Apache的开发者创建了一套基于池概念的内存管理方案。 在这套方案中,核心概念是池的概念。Apache内存分配的基本结构都是资源池,包括线程池,套接字池等等。内存池通常是...
阅读全文
摘要:下面分享一位web工程师,在性能与架构方面的经验: 一、不要过度设计:never over design 这是一个常常被提及的话题,但是只要想想你的架构里有多少功能是根本没有用到,或者最后废弃的,就能明白其重要性了。初涉架构设计,往往倾向于设计大而全的架构,希望设计出具有无比扩展性,能适应一切需求增加的架构,web开发领域是个非常动态的过程,我们很难预测下个星期的变化,而...
阅读全文
摘要:先看一段代码: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1'; 23 24 $user1 = new User(); 25 $user2 = new User(); 26 echo 'run user1 getCount...
阅读全文
摘要:文中采用的是Linux操作系统,Apache+PHP的网站构建方法。 代码优化 通常需要程式员要有好的编程习惯,尽量减少冗余代码的出现,现在也有好多工具能够完成这项功能,对于一般的html文档,用于减少冗余的减肥工具很多,而对于PHP程式来说这样的工具就不太多了,但是Zend Technologies的Zend Optimizer是一款很好的代码优化工具,能够免费从Zend Technolo...
阅读全文
摘要:xdebug http://xdebug.org/ 下载地址: Source: xdebug 2.0.3 Windows modules: PHP 5.1.2-5.1.7 PHP 5.2.1-5.2.6 PHP 5.3.0dev windows 编辑php.ini,先注释掉zend: [Zend] ;zend_exten...
阅读全文
摘要:事实上DSO是Dynamic Shared Objects(动态共享目标)的缩写,它是现代Unix派生出来的操作系统都存在着的一种动态连接机制。它提供了一种在运行时将特殊格式的代码,在程序运行需要时,将需要的部分从外存调入内存执行的方法。Apache在1.3以后的版本后开始支持它。因为Apache早就使用一个模块概念来扩展它的功能并且在内部使用一个基于调度的列表来链接扩展模块到Apac...
阅读全文
摘要:Apache2.0在性能上的改善最吸引人.在支持POSIX线程的Unix系统上,Apache可以通过不同的MPM运行在一种多进程与多线程相混合的模式下,增强部分配置的可扩充性能.相比于Apache1.3,2.0版本做了大量的优化来提升处理能力和可伸缩性,并且大多数改进在默认状态下即可生效.但是在编译和运行时刻,2.0也有许多可以显著提高性能的选择. MPM(Multi-ProcessingModu...
阅读全文