页面载入中...

用 PHP 压缩 JavaScript

其实这样的标题不太准确,因为压缩 JavaScript 的不是 PHP,而是 gzip。另外这种方法应用也相当广泛了,WordPress 上著名的 K2 主题一直是这样压缩 JavaScript 的。

第一步

打开需要压缩的 JavaScript 文件,把下面的代码加在 JavaScript 代码前面:

<?php
    ob_start('ob_gzhandler');
    header("Cache-Control: public");
    header("Pragma: cache");
    $offset = 60*60*24*60;
    $ExpStr = "Expires: ".gmdate("D, d M Y H:i:s",time() + $offset)." GMT";
    $LmStr = "Last-Modified: ".gmdate("D, d M Y H:i:s",filemtime(__FILE__))." GMT";
    header($ExpStr);
    header($LmStr);
    header('Content-Type: text/javascript; charset: UTF-8');
?>

第二步

把该文件另存为 *.php,如:common.js -> common.js.php。

第三步

引入该脚本的时候记得使用新的名称。

5条留言. 发言 or Trackback

  • Mao  14:19 Nov 10, 2007 

    现在就去测试!

  • sofish  13:41 Nov 11, 2007 

    已经试了,一个网速很慢的博客也帮忙测了,好像真的可以…哈哈 …

  • skyblue  00:00 Mar 28, 2008 

    需要服务器支持的吧?

  • Charles  10:27 May 14, 2008 

    我不大懂这些代码,但是直觉上,我觉得只有第一行是跟压缩有关的。而后续的代码貌似在控制缓冲,好像是让浏览器把缓冲文件的有效期设成60天。

    真要那样不会太长吗?我几乎天天改自己的代码呀。。。

  • 木蚂蚁  22:34 Sep 09, 2008 

    踩踩,拍砖

留言 ↓

欢迎回来, (修改)

  • :em19:
  • :em01:
  • :em25:
  • :em09:
  • :em11:
  • :em00:
  • :em13:
  • :em08:
  • :em10:
  • :em03:
  • :em02:
  • :em05:
  • :em07:
  • :em16:
  • :em27:
  • :em14:
  • :em21:
  • :em20:
  • :em24:
  • :em18:
  • :em17:
  • :em06:
  • :em23:
  • :em12:
  • :em22:
  • :em15:
  • :em26:
  • :em04:

正在提交数据...

2 Pingbacks & Trackbacks