• 技术文章 >后端开发 >php教程

    PHP实现页面静态化的方法介绍(代码示例)

    不言不言2019-01-09 10:17:04转载1127
    本篇文章给大家带来的内容是关于PHP实现页面静态化的方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    最近在工作中需要实现页面静态化,借此机会把相关资料记录,整理成demo。具体需求为输入域名,如baidusina等,如有静态页,返回静态页;如没有,访问获取网页内容并生成静态页。

    页面静态化的好处

    根据不同情况,有些需要生成静态页,有些实现伪静态即可,根据实际需求进行抉择。而静态化的好处,总结下来有以下几点:

    PHP生成静态页

    PHP生成静态页有多种方法,此次使用的是ob系列函数,函数内容可查看手册。

    <?php
    $website = $_GET['website'];
    ob_start();// 打开输出缓存
    $content = file_get_contents('http://www.'.$website.'.com');
    echo $content;// 输出内容,此部分的内容为静态页的内容
    file_put_contents('./'.$website.'.html', ob_get_contents());
    ob_end_clean();// 关闭
    echo $content;

    Rewrite重写规则

    在.htaccess中实现Rewrite重写规则,至于使用.htaccess是否影响效率不在讨论范围之内。

    RewriteEngine on
    # 如果有符合条件的静态页,返回静态页
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    # 路由重写
    RewriteRule ^(\w+).html$ /index.php?website=$1

    测试

    此时访问域名www.youWebsite.com/baidu.html,由于没有静态页,相当于请求到www.youWebsite.com/index.php?website=baidu。通过PHP的处理,已经生成baidu.html文件。
    再次访问www.youWebsite.com/baidu.html,这时由于存在baidu.html文件,直接返回静态页,而不再请求PHP。有几点注意事项:

    以上就是PHP实现页面静态化的方法介绍(代码示例)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:php
    上一篇:PHP的$_SERVER的详细介绍(代码示例) 下一篇:php操作redis cluster集群成功的实例讲解
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• PHP实现的加密解密处理类• php实现计算百度地图坐标之间距离的方法_php技巧• php实现图片上传、剪切功能_php技巧• jquery+php实现滚动的数字特效_jquery• Js+php实现异步拖拽上传文件_javascript技巧• 基于javascript、ajax、memcache和PHP实现的简易在线聊天室_javascript技巧• jquery+php实现搜索框自动提示_jquery
    1/1

    PHP中文网