伪静态有利于网站的收录,所以很多动态网站利用伪静态来优化网站
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
这样就可以实现伪静态了