php页面静态化

最近要开始苦逼的网站优化之路了,因为主页是php动态页面,加载速度较慢,所以决定生成静态页面,实现方法是利用php的file_put_contents获取页面,然后存放到index.html中

代码

1
2
3
4
5
6
7
<?php
ini_set("user_agent","Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2) Gecko/20100301 Ubuntu/9.10 (karmic) Firefox/3.6");
$index_file = ROOT_PATH . 'index.html';
$source_url = $site_url."/index.php";
file_put_contents($index_file, file_get_contents($source_url), LOCK_EX);
?>

Tips

  • 上面的代码并不完整,但大概意思已经展现了
  • 由于file_get_contents总是获取到手机端页面,所以需要加上第一行的ini_set伪装为PC端请求
  • curl更加强大,有兴趣的可以尝试一下