一般静态缓存缓存的都是一些静态页面,就是html为后缀的网站,这类网站不会频繁发生变化,使用静态缓存起来,既节省了下次打开该网站的速度,和使用的流量。
伪静态的意思是:一般的动态网站 指的是跟数据库有交互的网站,回频繁发生变化,那么静态缓存就不适用了,就要用到伪静态。
首先想要在php程序中实现伪静态首先要配置以下几点:
1:配置的是全局的伪静态(修改Apache配置文件,重启Apache,整个PHP都可以用)
(1): 去除httpd.conf文件中"#LoadModule rewrite_module modules/mod_rewrite.so"前面的"#"号;
(2): 关闭配置文件中的vhost
#Include conf/extra/httpd-vhosts.conf
#Include conf/vhosts.conf
(3): 在apache配置文件中写:
RewriteEngine on
#当访问任何以t_开头,以.html结尾的文件时,将$1用与(.*)匹配的字符替换后,访问相应的test.php页面
RewriteRule ^/t_(.*).html$ /test.php?id=$1 (在配置好后就可以通过localhost/test.php?id=3或者localhost/t_3.html访问并且传输一个id=3的数据)
如果打开vhost
则需要把规则写到vhost.conf
2:局部的伪静态(只用添加一个文件,不用重启Apache,但只是局部可以使用)
(1):修改httpd.conf文件中的所有"AllowOverride None"为"AllowOverride All","AllowOverride none"为"AllowOverride all"
(2) : 开启.htaccess一定使用相对目录(创建该文件时注意:该文件没有后缀名、而且编码格式为UTF8)
RewriteEngine on
RewriteRule ^t_(.*).html$ test.php?id=$1
RewriteRule ^hello_(.*).html$ test/test.php?id=$1
如果还是是用不了的话,重启Apache就可以了。
大神请无视!!!!!!!!!!!!!!!!!!!!!!!