网站绝对路径是指从网站根目录开始的完整路径,包括所有的文件夹和子文件夹。例如,一个网站的绝对路径可能是:
例如这种<a href="/news/">新闻资讯</a>就是相对地址
例如这种<a href="https://www.diryy.com/news/">新闻资讯</a>就是绝对地址。
网站首页采用绝对地址的好处
1、确保链接的准确性:使用绝对路径可以确保链接指向的资源是准确的,不会因为相对路径的变化而导致链接失效。
2、提高网站性能:相对路径需要浏览器进行额外的计算来确定资源的位置,而绝对路径可以直接指向资源,减少了加载时间。
3、方便资源管理:绝对路径可以让开发者更容易地管理网站资源,不需要考虑资源的相对位置。
4、更容易分享链接:使用绝对路径可以确保其他用户在分享链接时能够正确访问到资源,不会因为相对路径的问题而导致访问失败。
5、防止同行竞争对手恶意镜像我们的网站,还有就是防止搜索引擎只收录二三级域名而不收录一级域名。
6、使用绝对地址,可以免做301重定向,从而很好的解决网站首选域问题。
7、一个网站可以用多个域名进行访问,比如www.diryy.com和diryy.com都可以访问当我们网站,为了让搜索引擎更好的分清哪个才是我们的主站,我们应该采用绝对地址从而提高我们网站的权重。
首页采用决对地址,可以防止PR分散。如果有两个或更多的域名解析到了同一空间,首页采用的是决对地址,那么搜索引擎不管从哪个网站得到了收录的网站的页面,都会把权重记在主域名上。省去了301重定向。
PbootCMS整站链接转换为绝对链接的方法
开发文件:/apps/home/controller/ParserController.php
搜索函数:parserAfter
将新增函数放在parserAfter函数最后一行
$content = $this->parseLinkAddHost($content); // 相对路径转绝对链接return $content;
处理函数
将函数复制到ParserController类内
// 转绝对链接private function parseLinkAddHost($content) { if(!Config::get('parseLink')) { return $content; } // href $pattern_href = '/href="/(.*)"/isU'; $http_type_href = is_https() ? 'https://' : 'http://'; $http_host = $http_type_href . $_SERVER['HTTP_HOST'].'/'; $content = preg_replace($pattern_href, 'href="'.$http_host.'$1"', $content); // src $pattern = '/src="/(.*)"/isU'; $http_type = is_https() ? 'https://' : 'http://'; $http_host = $http_type . $_SERVER['HTTP_HOST'].'/'; $content = preg_replace($pattern, 'src="'.$http_host.'$1"', $content); return $content; }