Emlog博客文章链接URL统一

黄蜀黍
黄蜀黍
黄蜀黍
53
文章
2
评论
2021年6月14日11:52:25
评论
102 1048字
腾讯云

emlog博客的伪静态设置后,文章的url不是唯一的,会显示好几种样式,这种情况下面的几种链接都是可以打开的

https://www.yukawang.com/post-101.html
https://www.yukawang.com/xx/101.html, 
https://www.yukawang.com/?post=101
都是可以正常打开的,其中的XX为任意数字或者字母

我的网站就是这种情况,百度收录的这三种链接都有,非常不方便,对网站SEO也不友好,很可能会被判作弊。所以我就百度搜索了方法,这里介绍一个实测可用的方法。

本段代码通用代码,直接把下面代码放入echo_log.php和page.php第一行就可以了
<?php
$page=isset($params[5])?intval($params[5]):1;//文章页代码
$ymurl=$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//浏览器获取URL
//$emurl=preg_replace('/(http://|https://|)*/','',Url::log($logid));//去除http://或https://的默认url
$emurl=str_replace(array("http://","https://"),'',Url::log($logid));//去除http://或https://的默认url
if($emurl!=$ymurl && $page==1){//判断2者是否相同,是否第一页
header('HTTP/1.1 301 Moved Permanently');
header('Location:'.Url::log($logid));//不同时调整到默认URL
}
?>
如何没有修改过em内核路径的朋友们建议使用以下代码(速度更快)
<?php 
$page=isset($params[5])?intval($params[5]):1;
if(BLOG_URL.trim(Dispatcher::setPath(),'/') !=Url::log($logid) && $page==1 && $p==''){
header('HTTP/1.1 301 Moved Permanently');
header('Location:'.Url::log($logid));
}
?>

注意,如果文章设置有分页,这些代码就会出错

本文转自:解决Emlog文章详情页伪静态后URL不是唯一地址的教程 

爱准挂
黄蜀黍
  • 本文由 发表于 2021年6月14日11:52:25
  • 本站下载资源大部分来源于网络,如有侵权请联系本站删除
给自己的wordpress网站添加百度云加速免费CDN提升打开速度 建站日记

给自己的wordpress网站添加百度云加速免费CDN提升打开速度

百度云加速是国内比较早的CDN加速服务商之一,不仅可以免费使用,同时还带有防御功能。 给自己的wordpress网站添加百度云加速 使用前提 a.域名需要备案 b.百度帐号已实名 c.网站内容没有违反...
再见EMLOG,你好Wordpress! 建站日记

再见EMLOG,你好WordPress!

由于EMLOG6.0对于PHP7.0的兼容问题,造成很多插件无法运行,影响网站使用效果。目前已将网站迁移至wordpress,由于没有找到emlog6.0迁移至wordpress的插件,所以只能清除文...