kzong最近发现wordpress伪静态存在一个问题,会造成文章地址后门加上“/”和任意数字依然可以正常返回状态码200,这回让搜索引擎误以为站点页面存在重复行为,可能引发降权。通过搜索引擎kzong找到了相关的解决办法,大佬们已经为我们提供了解决经验。
问题展示:
[email protected]:~# curl -I https://www.ixmu.net/1.html HTTP/2 200 server: nginx date: Thu, 01 Oct 2020 03:49:03 GMT content-type: text/html; charset=UTF-8 vary: Accept-Encoding vary: User-Agent x-pingback: https://www.ixmu.net/xmlrpc.php link: <https://www.ixmu.net/?p=1>; rel=shortlink
kzong在正常配置的过程中以上代码被当作文本直接输出在了导航栏下方,所以给它价格php标签,修改后的代码直接加在 single.php、page.php 顶部即可:
<?php $current_url = home_url(add_query_arg(array())); $pid = url_to_postid($current_url); $link = get_permalink($pid); if($current_url!=$link){ global $wp_query; $wp_query->set_404(); status_header(404); nocache_headers(); include( get_query_template( '404' ) ); die(); } ?>
问题解决后的效果:
[email protected]:~# curl -I https://www.ixmu.net/1.html/9622 HTTP/2 301 server: nginx date: Thu, 01 Oct 2020 03:59:33 GMT content-type: text/html; charset=UTF-8 location: https://www.ixmu.net/1.html x-powered-by: PHP/7.2.24 vary: Accept-Encoding, Cookie set-cookie: PHPSESSID=i391f6jif3c24shvhjheqnncus; path=/ pragma: no-cache x-pingback: https://www.ixmu.net/xmlrpc.php expires: Wed, 11 Jan 1984 05:00:00 GMT cache-control: no-cache, must-revalidate, max-age=0 x-redirect-by: WordPress
针对WordPress链接进行URL 规范优化,可以防止页面重复,提高搜索引擎的评分,对于需要做seo优化的站点而言非常有帮助。但是,最终不要忘记了内容为王,站点的基本优化只能为权重加分。
评论