-
全静态: 就是通过php生成静态html文件,一次生成,然后所有用户在一段时间内的访问都直接返回该静态html文件。当过了自定义的有效缓存时间后,重新生成一次静态文件即可。这样就不用在每次用户访问时候都重新生成 一次页面,从而节省系统开销。 常见的例子比如各大门户的首页。 主要用到: file_put_contents("output.html", ob_get_contents()); // 将当前的php缓存(output_buffering)内容输出到output.html文件中。 20150322: codeigniter框架支持这种全静态缓存。参考:http://codeigniter.org.cn/user_guide/general/caching.html 同时也有实现调用memcached缓存的接口查看全部
-
rewrite^/post/([0-9]*).shtml $ /detail.php?id=$1查看全部
-
1、开启apache mod_rewrite.so 配置 在 httpd.conf中。 测试的话可以用phpinfo查看,看是否loaded modules 有这个模块 2、inculde conf/extra/httpd-vhosts.conf virtual hosts支持,虚拟域名配置 3、编写vartual host 段 4、本机host文件(如果需要本机测试针对windows) 5、伪静态配置 5.1 rewrite engine on 5.2编写规则 ^/post/([0-9]*).html$ /post.php?id=$1 放在 virtualhost 段中 eg;post.php 中编写 <?php echo 'this is '.$_GET['id']; 然后可以访问a.com/123.html 返回的就是this is 123. 扩展:如果目录下有123.html这个真正的文件,那么还是加载了动态的post 123. 那么如何设置呢,想要当前文件有了真正的静态文件,那么需要以下配置了 RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME}!-d RewriteCond%{DOCUMENT_ROOT}%{REQUEST_FILENAME}}!-f 以上两句话意思是如果根目录下有请求的目录或者文件,那就用他 当然这个要放在刚刚的那个rewrite的上面。查看全部
-
1、开启apache mod_rewrite.so 配置 在 httpd.conf中。 测试的话可以用phpinfo查看,看是否loaded modules 有这个模块 2、inculde conf/extra/httpd-vhosts.conf virtual hosts支持,虚拟域名配置 3、编写vartual host 段查看全部
-
如果配置文件没开启,就用函数ob_start();查看全部
-
输出流程: 内容 -> php buffer ->tcp ->客户端查看全部
-
output_buffering =on ;//开启buffer查看全部
-
buffer输出流程查看全部
-
buffer内容查看全部
-
if(is_file('./index.shtml'&&time()-filemtime(./index.shtml)) < 300){ requeire_once('./index.shtml');//加载静态页 }else{ //重新生成静态文件 file_put_contents('index.phtml',ob_get_contents()); }查看全部
-
基本方式 1、file_put_contents()函数 //根据返回值进行操作 2、使用PHP内置缓存机制实现页面静态化 - output_buffering ob_start(); //打开输出控制缓冲 ob_get_contens(); //并返回输出缓冲区内容 ob_clean();//清空输出缓冲区 ob_get_clean();//得到当前输出缓冲区的内容并删除查看全部
-
if(file_put_contents('index.shtml',ob_get_clean())){ echo '生成文件成功! '; }查看全部
-
PHP实现页面静态查看全部
-
局部动态页面生成查看全部
-
php静态化查看全部
举报
0/150
提交
取消