14个快速加载web页面的技巧:
减少HTTP请求数
使用CDN增加过期头信息gzip压缩传输内容将css样式表放在页首将js文件放在页尾不使用css表达式尽量少用内联式的css和js,将其放置在外部资源文件中减少DNS检索次数压缩js文件避免页面重定向移除重复脚本配置实体标签缓存ajax请求简单的linux优化提示:
系统采用最小化安装,仅安装必需的软件包,不装GUI/X-Window等停止或禁用无需使用的服务,比如cups调优内核参数: (例如)# echo '8192' > /proc/sys/fs/file-max# echo '32768' > /proc/sys/fs/inode-max# echo 268435456 > /proc/sys/kernel/shmall (SHMALL可用共享内存的总数量 单位:字节or页面[如果是字节,就和 SHMMAX 一样;如果是页面,ceil(SHMMAX/PAGE_SIZE)] )# echo 268435456 > /proc/sys/kernel/shmmax#ulimit -n 4096编译 apache HTTP服务器 编译必须模块时使用静态编译的方式来取代DSO(动态共享对象)方式,并且禁用无需使用的模块:./configure --prefix=/usr/local/apache2 --disable-status --disable-userdir --disable-threads --disable-ipv6 --enable-modules='ssl so rewrite deflate headers expires'启用 mod_deflate 模块说明: DEFLATE 输出过滤器,允许服务器在将输出内容发送到客户端以前进行压缩,以节约带宽打开 magento 根目录下的 .htaccess文件,定位到<IfModule mod_deflate.c></IfModule>块之间,将 其中的注释行开启,例如:<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary Header append Vary User-Agent env=!dont-vary</IfModule>启用 Header Expires 模块打开 magento 根目录下的 .htaccess文件,定位到<IfModule mod_expires.c></IfModule>块之间,例如<IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 month" ExpiresByType image/x-icon "access plus 1 month" ExpiresByType text/html "access plus 1 month" ExpiresByType text/plain "access plus 1 month" ExpiresByType text/css "access plus 1 month" ExpiresByType application/x-javascript "access plus 1 month" ExpiresByType application/x-shockwave-flash "access plus 1 month"</IfModule>禁用 Etag,启用 KeepAlive打开 magento 根目录下的 .htaccess文件,移除FileETage None行的注释,如果在httpd.conf没有启用KeepAlive,可在此处新增几行,例如FileETage NoneKeepAlive OnMaxKeepAliveRequests 200KeepAliveTimeout 5Mysql 快速优化在 my.conf 中变更以下参数:skip-name-resolveinnodb_buffer_pool_size=768Minnodb_flush_log_at_trx_commit=2时常使用Tuning Primer程序监测mysql运行状态并调整相应的配置参数PHP编译类似apache编译方式,采取静态编译的方式来编译扩展,并禁用无需的模块:./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc/php --with-png-dir --with-jpeg-dir --with-gd --with-curl --with-zlib --enable-mbstring --with-mcrypt --with-freetype-dir=/usr --with-mysql=/usr/bin/mysql --with-mysqli --enable-pdo --with-pdo-mysql=/usr/bin/mysql --without-pdo-sqlite --with-openssl为PHP安装 eAccelerator 插件从 eAccelerator.net 下载最新的稳定版本,编译时启用共享内存:./configure --with-eaccelerator-shared-memory --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config完成上述操作之后,我们已经完成了步骤A:添加 过期头信息gzip压缩组件配置配置实体标签此时我们拥有了:一个能最大程度促进站点性能的轻量级的LAMP环境一个足够快的运行Magento的环境现在 让我们正式进入到Magento调优阶段先看看Magento系统内置的优秀的性能优化模块:多种适配器缓存编译合并css和js文件并行下载启用 Magento 缓存管理面板->System->Cache ManagementAll Cache -> EnableLayered Navigation(层次化导航) -> Yes管理面板->System->Configuration->Catalog->FrontendUse Flat Catalog Category -> YesUse Flat Catalog Product -> Yes启用eAccelerator适配器打开 {Magento_root}/app/etc/local.xml,在里面增加如下3行... </resources> <session_save><![CDATA[files]]></session_save> <cache> <backend>eaccelerator</backend> </cache>启用编译管理面板->System->Tools->Compilation(编译)->Run compilation Process合并 CSS & JS 文件管理面板->System->Configuration->Developerjs 设置->合并js文件->YEScss 设置->合并css文件->YES并行下载设置通过虚拟主机将magento下的资源目录划分成几个子域名,例如:js.iamsese.cn -> {Magento_root}/jsmedia.iamsese.cn -> {Magento_root}/mediaskin.iamsese.cn -> {Magento_root}/skin然后去管理面板->System->Configuration->Website->Unsecure(不安全的,非加密的),and configure the basic URLs accordingly(相应的)现在你完成了:减少HTTP请求数将css样式表放在页首将js文件放在页尾尽量少用内联式的css和js,将其放置在外部资源文件中减少DNS检索次数压缩js文件现在把它们拼凑在一起:减少HTTP请求数增加过期头信息gzip压缩传输内容将css样式表放在页首将js文件放在页尾不使用css表达式尽量少用内联式的css和js,将其放置在外部资源文件中减少DNS检索次数压缩js文件避免页面重定向移除重复脚本配置实体标签缓存ajax请求