PHP实现伪静态

伪静态有利于网站的收录,所以很多动态网站利用伪静态来优化网站

mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面。

 

1、.检测Apache是否支持mod_rewrite
如果是租的服务器需联系主机商;

 

如果自己在本地测试可以用phpinfo()函数查看环境配置

通过Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。

如果没有开启“mod_rewrite”,则打开目录 您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadModule rewrite_module”,将前面的”#”号删除即可。

如果没有查找到,则到“LoadModule” 区域,在最后一行加入“LoadModule rewrite_module ,modules/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。
注意要重启服务器。。。。

 

2、这个是本博客的.htaccess的例子,参考一下

RewriteEngine on
RewriteRule showArticle_(\d+).html$ showArticle.php\?article_id=$1
RewriteRule category_(\d+).html$ articles.php\?category_id=$1
首先

RewriteEngine on #rewriteengine为重写引擎开关on为开启off为关闭
下面是RewriteRule 为重写规则,可用正则表达式

 

showArticle_(\d+).html$为请求的url

showArticle.php\?article_id=$1为要跳转到的url地址

$1 为 前面的 (\d+)

比如如果要显示 id 为1的文章,

不用伪静态的url为

showArticle.php?article_id=1

使用伪静态则可以为

showArticle_1.html,1就代表 id=1

这样就可以实现伪静态了

发表评论