迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 网络 >

在SEO过程中,如何避免网站中出现软404

作者:迹忆客 最近更新:2023/01/08 浏览次数:

这篇文章分享一个SEO的问题,软404。我们在网站中经常见到的一个状态码就是404。无论我们是否开发一个网站,这都是要面对的一个问题

何谓软404

在说软404之前,我们首先要了解什么是404。404 是一个 HTTP状态码,表示网页未找到。简单来说,当我们访问一个网页的时候,如果我们请求的网址没有对应的资源,则网站就会返回给我们 “404 网页不存在”

关于HTTP不是我们这篇文章的目的,可以查看HTTP教程了解更多HTTP基础知识。下面我们看一个 404的通用页面

 

404 通用页面
404 通用页面

 

默认情况下,如果我们访问了一个不存在的链接,web服务器会返回给我们上面这样一个页面(Nginx)。但是,如果我们是一个网站运营者,我们会发现直接把这种页面返回给用户,肯定会降低我们网站的逼格。

鉴于此,一般我们都会自己定义一个404页面,我自己网站的404页面是下面这样子的。

访问 https://www.jiyik.com/a.html

404 自定义页面

软404

关于404我们就介绍这么多,下面我们主要说一下软404。刚开始做网站的时候对软404的概念也不了解。最开始只想着自定义404页面来提升用户的体验。 但是有一个问题没有注意到,如果是纯静态的,可以直接通过Ningx或者Apache等web服务配置自己的404页面。这种是没有什么问题的。但是如果是那种动态的页面,我们是需要在代码中判断用户所请求的资源是否存在,如果不存在的话,我们是直接通过模版引擎渲染了一个404页面。 简单看一下代码

if (count($res) <= 0) {
    $this->displayError("404");
    return;
}

这里我访问一篇不存在的一篇教程内容,会返回一个404页面

软404页面

那么问题来了,这里返回给了用户一个404页面,但是我们给的HTTP状态码却是200。 虽然用户没有什么感觉,但是要做SEO,对于搜索引擎来说,它会认为你这是赤裸裸的欺骗。(其实我是一个SEO小白,我真不是存心要欺骗你的)

上面这种情况也就是我们今天要介绍的主角,软404。所谓软404,就是给用户展现的是一个404的页面,但是实际的HTTP状态码却是200。

所以要解决软404,其实很简单,就是返回给用户一个404页面的同时,把响应的状态码也改成404或者410即可。这个要看你的网站所用的编程语言了。然而不管是什么语言,最核心的还是HTTP协议。

对于PHP来说,其实是比较简单的,可以通过 header 来修改响应状态码

header("status: 404 Not Found");

修改之后,再请求相同地址的时候,在返回了自定义404页面的同时,状态码也变成了404。

解决软404之后的页面

总结

开发维护一个网站真心不是容易,如果只是开发出来对于一个程序员来说不是什么难事。但是其中很多的细节是需要我们用心去做的。我个人是一个开发者,对于SEO真心是一个小白,边做边学习边修改吧。 如果不是开发人员,要想做好一个网站,不论是用cms还是其他的框架,都希望能了解一下HTTP协议。现在已经进入了HTTP2.0的时代了。有兴趣也可以了解一下 HTTP2的前世今生 以及 HTTP1.1的不足

推荐阅读:

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 Go 中重用 Http 连接

发布时间:2023/01/17 浏览次数:139 分类:Go

HTTP 1.1 协议支持 HTTP 持久连接,也称为 HTTP Keep-Alive 。 这允许客户端和服务器在发送多个 HTTP 请求/响应时重新使用相同的底层 TCP 连接。 因此,客户端不是为每个 HTTP 请求建立连接,而

Golang httptest 的示例

发布时间:2023/01/17 浏览次数:139 分类:Go

当我第一次了解到它的 HTTP 测试包时,Go (Golang) 给我留下了深刻的印象。 在其他编程语言中,我习惯于做很多测试 HTTP 服务器的工作。 在 Go (Golang) 中,情况并非如此。 有一个很棒的测

Golang Http Server 的示例

发布时间:2023/01/16 浏览次数:184 分类:Go

Golang 在其标准库中直接提供了一个可用于处理 http 协议的包。 net/http 包。 在这篇文章中,我们将探索 net/http 包的功能以及我们如何使用它来运行我们自己的 http 服务器。 我们要查看

Golang httptrace 的示例

发布时间:2023/01/16 浏览次数:238 分类:Go

httptrace 包是从 Go1.7 开始包含在 Go (Golang) 标准库中的新包。 如果我们想要监控 http 请求的性能,或者如果我们想要收集和监控有关我们的 http 客户端的统计信息,该包将非常有用。 主

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便