Check server response of

Server response
NS records
Whois domain
Response headers
Request headers
Raw HTML code
301 Moved Permanently - whyhw.com
HTTP Status: 301
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
Connection: keep-alive
Content-Length: 162
Server: GitHub.com
Content-Type: text/html
Location: https://www.whyhw.com/
X-GitHub-Request-Id: BCFC:30A222:AE730E:B02CDA:681FF839
Accept-Ranges: bytes
Age: 0
Date: Sun, 11 May 2025 01:07:05 GMT
Via: 1.1 varnish
X-Served-By: cache-hel1410027-HEL
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1746925626.574814,VS0,VE120
Vary: Accept-Encoding
X-Fastly-Request-ID: 26e014e3c081e11b8815b14d5504f741423434d3

HTTP Code 301 Moved Permanently

301 http status code means that the requested resource has been permanently moved to a new URL. All future requests should use the new address.

When is Code 301 used?

  • When changing a website domain
  • When modifying URL structures
  • When setting up redirects for SEO

What does Code 301 mean for the user?

The browser will automatically redirect the user to the new address, and search engines will update their indexes.

200 OK - https://www.whyhw.com/
HTTP Status: 200
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
Connection: keep-alive
Content-Length: 6236
Server: GitHub.com
Content-Type: text/html; charset=utf-8
Last-Modified: Fri, 13 Dec 2024 03:35:27 GMT
Access-Control-Allow-Origin: *
Strict-Transport-Security: max-age=31556952
ETag: "675bab7f-185c"
expires: Sun, 11 May 2025 01:17:06 GMT
Cache-Control: max-age=600
x-proxy-cache: MISS
X-GitHub-Request-Id: 4286:23FFB7:21149CE:21684DE:681FF839
Accept-Ranges: bytes
Age: 0
Date: Sun, 11 May 2025 01:07:06 GMT
Via: 1.1 varnish
X-Served-By: cache-hel1410032-HEL
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1746925626.275672,VS0,VE154
Vary: Accept-Encoding
X-Fastly-Request-ID: 782eaa4017b4b47b9fd5639a611dc70c927b93d9

HTTP Code 200 OK

200 http status code is a standard successful HTTP server response. It means that the client’s request (e.g., from a browser) was successfully processed, and the server is delivering the requested data.

When is Code 200 used?

  • When loading a web page
  • When successfully receiving an API response
  • When processing a form or another HTTP request

What does Code 200 mean for the user?

The user receives content without errors, and the page or application functions properly. If Code 200 is accompanied by data, the browser or program processes and displays it to the user.

GET / HTTP/1.1
Host: whyhw.com
Accept: */*
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
<!DOCTYPE html>
<html data-theme="light">
  <head>
    <meta charset="utf-8" />
    <meta name="description" content="yomua" />
    <meta name="keywords" content="yomua" />
    <meta name="author" content="yomua" />
    <meta name="viewport" content="width=device-width,initial-scale=1" />
    <title></title>
    <style>
      * {
        box-sizing: border-box;
      }

      body,
      div,
      dl,
      dt,
      dd,
      ul,
      ol,
      li,
      h1,
      h2,
      h3,
      h4,
      h5,
      h6,
      pre,
      code,
      form,
      fieldset,
      legend,
      input,
      p,
      blockquote,
      th,
      td {
        margin: 0;
        padding: 0;
      }

      a {
        text-decoration: none;
      }

      a:link {
        color: none;
      }

      html {
        line-height: 1.15;
        /* 1 */
        -webkit-text-size-adjust: 100%;
        /* 2 */
      }

      body {
        /* 
             *  解决因为切换页面时, body 滚动条出现/消失 而导致页面看起来像是在抖动的问题 
                => 视区 vw 包含滚动条宽度, 而实际元素内容在参与 css 规则时, 会去掉滚动条宽度
                => 可以去一个有滚动条的页面, 查看 html 元素的宽度, 是不会计算滚动条宽度的
                => 但是, 如果你为 html 元素设置 width: 100vw, 则就会包含滚动条宽度
             *  这样就不会因为有的路由页面 A 没有滚动条, 然后跳转到有滚动条的页面 B 时, 出现抖动: 
                => 页面会先显示没有滚动条时的样子, 当滚动条出现时, 页面 B 的内容, 被滚动条宽度挤到一边, 从而造成视觉上的页面抖动
                => 反之, 从有滚动条的页面 B 跳转到页面 A 时, 也会出现 A 页面由于没有滚动条, 宽度又改变, 内容又位移的情况
             *  我们只需要让 html 元素宽度始终包含滚动条宽度, 这样就可以解决抖动问题
             *  或让 html: calc(100vw - 滚动条宽度), 这样也能解决页面抖动问题, 不过这会有个问题:
                => 这样做, 相当于始终认为存在一个滚动条宽度, 导致任何页面都会减去滚动条宽度,
                => 这样即使没有滚动条的页面, 也会因为这个操作从而造成页面右边会缺失一些宽度
                => 这可能会让一些页面布局, 如: 背景色, 覆盖不到整个页面, 出现缺失的情况.
             */
        width: 100vw;
        overflow-x: hidden;
        background-color: var(--global-primary-bg-color);
      }

      body::-webkit-scrollbar {
        width: 10px;
      }

      body::-webkit-scrollbar-track {
        opacity: 0;
        background-color: var(--global-primary-bg-color);
      }

      body::-webkit-scrollbar-thumb {
        background: var(--global-scroll-thumb-color);
        opacity: 0.2;
        border-radius: 25px;
      }

      main {
        display: block;
      }

      hr {
        box-sizing: content-box;
        overflow: visible;
        border: none;
      }
    </style>
    <meta property="og:title" content="yomua笔记" />
    <meta property="og:description" content="yomua love you." />
    <meta property="description" content="yomua love you." />
    <meta property="og:image" content="/assets/favicon.png" />
    <meta property="og:image:type" content="image/png" />
    <link rel="shortcut icon" type="image/x-icon" href="/assets/favicon.png" />
    <link rel="stylesheet" href="/umi.c90a4e9b.css" />
    <script>
      window.routerBase = "/";
    </script>
    <script>
      //! umi version: 3.5.41
    </script>
  </head>

  <body>
    <div id="root"></div>

    <script>
      const urlParams = new URLSearchParams(window.location.search);
      const redirected = urlParams.get("redirected");

      // 例如: /feature/article/xxx.md
      const pathname = urlParams.get("pathname");

      document.addEventListener("DOMContentLoaded", function () {
        if (redirected !== "true") {
          return;
        }

        if (pathname.indexOf("/feature/article") === -1) {
          window.location.href = location.origin || "https://www.whyhw.com";

          return;
        }

        /** 如果用户是直接通过地址栏访问 /feature/article/xxx.md */

        // 若并非是第一次进入网页, 则存在
        const selectedArticleKeyBefore =
          localStorage.getItem("selectedArticleKey") || "";

        // 通过选中的 .md 文件的 key, 找到 public 文件夹所在的位置, 如:
        // => github 服务器: /home/runner/work/yomua/yomua/public/
        // => 本地: D:/code/yomua/public/
        let rootPath = selectedArticleKeyBefore.slice(
          0,
          selectedArticleKeyBefore.indexOf("article")
        );

        // 如果没办法找到 public 文件夹所在的位置, 则手动写
        if (!rootPath) {
          rootPath = window.location.origin.includes("whyhw.com")
            ? "/home/runner/work/yomua/yomua/public/" // 在线上直接打开开发者工具查看 local storage 即可看到此路径。
            : "D:/code/yomua/public/";
        }

        // 得到具体文章存储在服务器的完整路径
        // 例如: /home/runner/work/yomua/yomua/public/article/xxx.md
        const selectedArticleKeyAfter = `${rootPath}${pathname.replace(
          "/feature/", // 删除 feature, 是因为我们将文章存储于 public/article
          ""
        )}`;

        // 此时页面已经加载, umi 已经可以成功拦截路由
        // 所以此时再把页面的地址改成 => https://www.whyhw.com/feature/article/xxx.md#heading-4
        history.replaceState(
          null,
          null,
          location.origin +
            "/feature/article" +
            "?redirected=true" +
            `&pathname=${pathname}` +
            `&selectedArticleKey=${selectedArticleKeyAfter}` +
            location.hash
        );

        // 手动触发路由跳转到 /feature/article
        const popStateEvent = new PopStateEvent("popstate");

        window.dispatchEvent(popStateEvent);
      });
    </script>

    <script src="/umi.918c9952.js"></script>
  </body>
</html>
                               

Whois info of domain

Domain Name: WHYHW.COM
Registry Domain ID: 2507237616_DOMAIN_COM-VRSN
Registrar WHOIS Server: grs-whois.hichina.com
Registrar URL: http://www.net.cn
Updated Date: 2025-03-10T01:39:50Z
Creation Date: 2020-03-25T13:53:07Z
Registry Expiry Date: 2026-03-25T13:53:07Z
Registrar: Alibaba Cloud Computing (Beijing) Co., Ltd.
Registrar IANA ID: 420
Registrar Abuse Contact Email: [email protected]
Registrar Abuse Contact Phone: +86.95187
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Domain Status: clientUpdateProhibited https://icann.org/epp#clientUpdateProhibited
Name Server: DNS15.HICHINA.COM
Name Server: DNS16.HICHINA.COM
DNSSEC: unsigned
URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
>>> Last update of whois database: 2025-05-11T01:07:00Z <<<
For more information on Whois status codes, please visit https://icann.org/epp
NOTICE: The expiration date displayed in this record is the date the
TERMS OF USE: You are not authorized to access or query our Whois
by the following terms of use: You agree that you may use this Data only
to: (1) allow, enable, or otherwise support the transmission of mass