Emlog博客完美转伪静态的方法

网站优化本意是通过修改网站,提高网站用户体验,增加网站用户粘度,最终提升网站排名,但被大多数SEO给误解,误认为改版会增加网站降权K站的风险,所以如果不是不得已的情况下,SEOER都不会随便修改网站代码!

伪静态已经不是一个新鲜的名词了,尤其是在现今SEO的炒作中。如何实现伪静态这是每个程序员都关心的问题,除非您不搞SEO。大多的伪静态都是以 Htaccess(Apache mod_rewrite)来实现的,但是一个规划不太好的网站要用Htaccess实现,需要写一大堆的代码,而还有某种原因我们不得不放弃 Htaccess,或是由于服务器不支持,或是个人偏好等等。

Emlog 默认不能生成静态文件,不过好像有生成静态页面的相关插件,该插件先不研究,今天李明给大家分享一下Emlog在各种环境下的伪静态规则,大家都知道,通 过伪静态可以让博客文章网址变得对搜索引擎更加友好,据网上的seoer们说,好的伪静态有利于搜索引擎优化,具体有没有博主可自己去探讨。

注:伪静态必须空间支持且在后台-设置中开启伪静态。

我的博客曾经改版过多次,网站排名不但没有下降,均有所上升,相反,那些不敢改版的人,排名却没有想象中的稳定。当然,改版也需要根据用户体验进行!

IIS6:(iis6主机请联系主机商修改规则,部分主机支持httpd.ini,请将下列代码保存为httpd.ini上传到博客根目录)

[ISAPI_Rewrite] # 3600 = 1 hour CacheClockRate 3600 RepeatLimit 32 RewriteRule /robots.txt(.*) /robots.txt$1 [L] RewriteRule /rss.php(.*) /rss.php$1 [L] RewriteRule /tb.php(.*) /tb.php$1 [L] RewriteRule /favicon.ico /favicon.ico [L] RewriteRule /xmlrpc.php(.*) /xmlrpc.php$1 [L] RewriteRule /wlwmanifest.xml /wlwmanifest.xml [L] RewriteRule /(t|m)$ /$1/ [R] RewriteRule /(admin|content|include|t|m)/(.*) /$1/$2 [L] RewriteRule /install.php(.*) /install.php$1 [L] RewriteRule /emlog_toolkit.php(.*) /emlog_toolkit.php$1 [L] RewriteRule /up(d.d.d)to(d.d.d).php(.*) /up$1to$2.php$3 [L] RewriteRule ^/$ /index.php [L] RewriteRule /(.*) /index.php/$1 [L]
支持.htaccess的IIS6服务器规则:
RewriteEngine on
RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [L]
Emlpg设置伪静态后,访问?post = *** 还是能查看文章,这样就让一个文章出现好多不同的链接,刚刚折腾好久的代码,所有em用户通用,代码复制粘贴就好了,不需要改。
使用以下代码:
1.非 www 域名跳转
网站解析肯定要有一个1级域名  ***.com  但是一般都用  www.***.com 这样的2级域名,用以下代码可以让访问 ***.com 自动跳转到www开头的(网页参数不变)
注意:跳转的链接是以后台设置的网站首页为准。
if ('http://' . $_SERVER['HTTP_HOST'] . '/' != BLOG_URL){ header('HTTP/1.1 301 Moved Permanently'); header('Location:' . BLOG_URL . trim(Dispatcher::setPath(), '/')); exit; }
代码粘贴到:header.php 里面 如下图:
2.文章页面301跳转:
$the_url = Url::log($logid); if (stristr (BLOG_URL . trim(Dispatcher::setPath(), '/'),$the_url) == false){ header('HTTP/1.1 301 Moved Permanently'); header('Location:'.$the_url); exit; }
代码粘贴到:echo_log.php 里面 如下图:
3.自定义页面301跳转:
自定义页面301跳转和文章页面301跳转代码一样
$the_url = Url::log($logid); if (stristr (BLOG_URL . trim(Dispatcher::setPath(), '/'),$the_url) == false){ header('HTTP/1.1 301 Moved Permanently'); header('Location:'.$the_url); exit; }
代码粘贴到:page.php 里面 如下图:
4.分类301跳转,有时候我们设置了分类别名,
$the_url = $_SERVER["REQUEST_URI"]; $the_url = str_replace("index.php","",$the_url); $the_url = str_replace("sort","",$the_url); $the_url = str_replace("/","",$the_url); //通过URL获取到当前日志ID / 别名,找了半天教程都没有、只能用这种旁门左道 $the_url = Url::sort($the_url); if ($the_url != BLOG_URL . trim(Dispatcher::setPath(), '/')){ header('HTTP/1.1 301 Moved Permanently'); header('Location:'.$the_url); exit; }
代码粘贴到: log_list.php 里面 即可自动301跳转到别名链接,如图所示:




本博客已把动态网址转为伪静态网址了,反正我个人觉得这样有利于seo,小白见解大神勿喷。。。

本文地址: http://likinming.com/post-689.html

你可能想看:
分享给朋友: