Nodejs相关:github是不是又被封了

Nodejs相关:github是不是又被封了

github是不是又被封了?

9 回复

Node.js 相关:GitHub 是不是又被封了?

最近有不少开发者反馈说无法访问 GitHub,这引发了大家的担忧。那么,究竟 GitHub 是不是又被封了呢?让我们一起来看看如何通过一些简单的工具和方法来判断这个问题。

如何检测 GitHub 是否被封

首先,我们可以使用一些网络工具来检查 GitHub 的访问情况。以下是一个简单的 Node.js 脚本示例,用于检测 GitHub 的访问状态:

const https = require('https');
const url = 'https://github.com';

function checkGitHub() {
    return new Promise((resolve, reject) => {
        https.get(url, (res) => {
            if (res.statusCode === 200) {
                resolve(true);
            } else {
                resolve(false);
            }
        }).on('error', (err) => {
            reject(err);
        });
    });
}

checkGitHub()
    .then(isAvailable => {
        if (isAvailable) {
            console.log("GitHub is accessible.");
        } else {
            console.log("GitHub is not accessible.");
        }
    })
    .catch(err => {
        console.error(`Error checking GitHub: ${err.message}`);
    });

解释

  1. 引入 HTTPS 模块:我们首先需要引入 Node.js 的 https 模块,以便我们可以发送 HTTP 请求。
  2. 定义 URL:我们将要检测的 URL 是 GitHub 的主页。
  3. 创建 checkGitHub 函数:该函数返回一个 Promise,用于异步地检查 GitHub 的状态码。
  4. 发送请求:我们使用 https.get 方法向 GitHub 发送 GET 请求。
  5. 处理响应:如果响应的状态码是 200(表示成功),则表示 GitHub 可以正常访问;否则表示不可访问。
  6. 错误处理:如果请求过程中发生错误,则捕获并输出错误信息。

运行脚本

将上述代码保存为 check-github.js 文件,然后在命令行中运行:

node check-github.js

根据输出结果,你可以判断当前 GitHub 是否可以正常访问。

其他方法

除了使用 Node.js 脚本外,你还可以使用其他工具如 pingcurl 来检测 GitHub 的可达性:

ping github.com
curl -I https://github.com

这些工具同样可以帮助你判断 GitHub 是否被封禁。

希望这些方法能够帮助你确认 GitHub 的访问情况。


杭州电信依然正常. 看网上帖子好像很多地方不行了, 压力略大 http://v2ex.com/t/86230 http://ruby-china.org/topics/14908

加拿大这边一切正常

今天上海登不上去哈! 都快伤心死啦!

北京昨天确实无法访问,X墙吧

上海这边有问题。 我改了一下host,web访问顺畅一些,但是同步还是不行。

时不时的连不上

杭州电信目前无压力

回复内容

关于“GitHub 是不是又被封了?”这个问题,通常情况下,访问 GitHub 的情况会因网络环境的变化而有所不同。如果你发现自己无法访问 GitHub,可以尝试以下几种方法来确认和解决:

  1. 检查网络状况

    • 首先确认你的本地网络是否正常。可以尝试访问其他网站或使用在线工具测试网络连接。
  2. 使用命令行检测

    • 打开命令行工具(如终端),使用 ping 命令来检测 GitHub 的服务器响应情况。
    ping github.com
    
    • 如果能够收到响应,说明基本网络连接没有问题。如果超时,则可能是网络被限制。
  3. DNS 解析测试

    • 使用 nslookupdig 命令来检查 DNS 解析是否正常。
    nslookup github.com
    
    • 正常情况下,你应该能看到解析结果,否则可能是 DNS 被污染。
  4. 更换 DNS 服务器

    • 如果你怀疑是 DNS 问题,可以更换为公共 DNS 服务器,例如 Google DNS (8.8.8.8 和 8.8.4.4) 或者 Cloudflare DNS (1.1.1.1)。
    # 在 Windows 中修改 DNS
    netsh interface ipv4 set dns "以太网" static 8.8.8.8
    netsh interface ipv4 add dns "以太网" 8.8.4.4
    
    # 在 macOS 中修改 DNS
    sudo networksetup -setdnsservers Wi-Fi 8.8.8.8 8.8.4.4
    
  5. 使用代理或 VPN

    • 如果上述方法都无法解决问题,你可以考虑使用代理或 VPN 来访问 GitHub。
  6. 检查 GitHub 状态页面

总结来说,你可以通过以上步骤逐一排查,找出具体原因并采取相应措施。希望这些信息对你有所帮助。

回到顶部