溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在Linux終端如何快速檢測網(wǎng)站是否宕機

發(fā)布時間:2021-10-25 11:24:28 來源:億速云 閱讀:119 作者:小新 欄目:系統(tǒng)運維

這篇文章主要為大家展示了“在Linux終端如何快速檢測網(wǎng)站是否宕機”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習一下“在Linux終端如何快速檢測網(wǎng)站是否宕機”這篇文章吧。

方法 1:使用 fping 命令檢測一個網(wǎng)站是否宕機

fping 命令 是一個類似 ping 的程序,使用互聯(lián)網(wǎng)控制消息協(xié)議(ICMP)的回應(yīng)請求報文echo request來判斷目標主機是否能回應(yīng)。fpingping 的不同之處在于它可以并行地 ping 任意數(shù)量的主機,也可以從一個文本文件讀入主機名稱。fping 發(fā)送一個 ICMP 回應(yīng)請求后不等待目標主機響應(yīng),就以輪詢模式向下一個目標主機發(fā)請求。如果一個目標主機有響應(yīng),那么它就被標記為存活的,然后從檢查目標列表里去掉。如果一個目標主機在限定的時間和(或)重試次數(shù)內(nèi)沒有響應(yīng),則被指定為網(wǎng)站無法到達的。

# fping 2daygeek.com linuxtechnews.com magesh.co.in 2daygeek.com is alivelinuxtechnews.com is alivemagesh.co.in is alive

方法 2:使用 http 命令檢測一個網(wǎng)站是否宕機

HTTPie(讀作 aitch-tee-tee-pie)是一個命令行 HTTP 客戶端。httpie 是一個可以與 web 服務(wù)通過 CLI 進行交互的現(xiàn)代工具。httpie 工具提供了簡單的 http 命令,可以通過發(fā)送簡單的、自然語言語法的任意 HTTP 請求得到多彩的結(jié)果輸出。HTTPie 可以用來對 HTTP 服務(wù)器進行測試、調(diào)試和基本的交互。

# http 2daygeek.com HTTP/1.1 301 Moved PermanentlyCF-RAY: 535b66722ab6e5fc-LHRCache-Control: max-age=3600Connection: keep-aliveDate: Thu, 14 Nov 2019 19:30:28 GMTExpires: Thu, 14 Nov 2019 20:30:28 GMTLocation: https://2daygeek.com/Server: cloudflareTransfer-Encoding: chunkedVary: Accept-Encoding

方法 3:使用 curl 命令檢測一個網(wǎng)站是否宕機

curl 命令   是一個用于在服務(wù)器間通過支持的協(xié)議(DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP3、POP3S、RTMP、RTSP、SCP、SFTP、SMTP、SMTPS、TELNET  和 TFTP)傳輸數(shù)據(jù)的工具。這個工具不支持用戶交互。curl 也支持使用代理、用戶認證、FTP 上傳、HTTP POST 請求、SSL 連接、cookie、斷點續(xù)傳、Metalink 等等。curl由 libcurl 庫提供所有與傳輸有關(guān)的能力。

# curl -I https://www.magesh.co.in HTTP/2 200date: Thu, 14 Nov 2019 19:39:47 GMTcontent-type: text/htmlset-cookie: __cfduid=db16c3aee6a75c46a504c15131ead3e7f1573760386; expires=Fri, 13-Nov-20 19:39:46 GMT; path=/; domain=.magesh.co.in; HttpOnlyvary: Accept-Encodinglast-modified: Sun, 14 Jun 2015 11:52:38 GMTx-cache: HIT from Backendcf-cache-status: DYNAMICexpect-ct: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"server: cloudflarecf-ray: 535b74123ca4dbf3-LHR

如果你只想看 HTTP 狀態(tài)碼而不是返回的全部信息,用下面的 curl 命令:

# curl -I "www.magesh.co.in" 2>&1 | awk '/HTTP\// {print $2}' 200

如果你想看一個網(wǎng)站是否宕機,用下面的 bash 腳本:

# vi curl-url-check.sh #!/bin/bashif curl -I "https://www.magesh.co.in" 2>&1 | grep -w "200\|301" ; then    echo "magesh.co.in is up"else    echo "magesh.co.in is down"fi

當你把腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh curl-url-check.sh HTTP/2 200magesh.co.in is up

如果你想看多個網(wǎng)站的狀態(tài),使用下面的 shell 腳本:

# vi curl-url-check-1.sh #!/bin/bashfor site in www.google.com google.co.in www.xyzzz.comdoif curl -I "$site" 2>&1 | grep -w "200\|301" ; then    echo "$site is up"else    echo "$site is down"fiecho "----------------------------------"done

當你把上面腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh curl-url-check-1.sh HTTP/1.1 200 OKwww.google.com is up----------------------------------HTTP/1.1 301 Moved Permanentlygoogle.co.in is up----------------------------------www.xyzzz.com is down----------------------------------

方法 4:使用 wget 命令檢測一個網(wǎng)站是否宕機

wget 命令(前身是 Geturl)是一個自由開源的命令行下載工具,通過 HTTP、HTTPS、FTP 和其他廣泛使用的互聯(lián)網(wǎng)協(xié)議獲取文件。wget 是非交互式的命令行工具,由 World Wide Web 和 get 得名。wget 相對于其他工具來說更優(yōu)秀,功能包括后臺運行、遞歸下載、多文件下載、斷點續(xù)傳、非交互式下載和大文件下載。

# wget -S --spider https://www.magesh.co.in Spider mode enabled. Check if remote file exists.--2019-11-15 01:22:00--  https://www.magesh.co.in/Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'Resolving www.magesh.co.in (www.magesh.co.in)… 104.18.35.52, 104.18.34.52, 2606:4700:30::6812:2334, …Connecting to www.magesh.co.in (www.magesh.co.in)|104.18.35.52|:443… connected.HTTP request sent, awaiting response…  HTTP/1.1 200 OK  Date: Thu, 14 Nov 2019 19:52:01 GMT  Content-Type: text/html  Connection: keep-alive  Set-Cookie: __cfduid=db73306a2f1c72c1318ad4709ef49a3a01573761121; expires=Fri, 13-Nov-20 19:52:01 GMT; path=/; domain=.magesh.co.in; HttpOnly  Vary: Accept-Encoding  Last-Modified: Sun, 14 Jun 2015 11:52:38 GMT  X-Cache: HIT from Backend  CF-Cache-Status: DYNAMIC  Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"  Server: cloudflare  CF-RAY: 535b85fe381ee684-LHRLength: unspecified [text/html]Remote file exists and could contain further links,but recursion is disabled -- not retrieving.

如果你只想看 HTTP 狀態(tài)碼而不是返回的全部結(jié)果,用下面的 wget 命令:

# wget --spider -S "www.magesh.co.in" 2>&1 | awk '/HTTP\// {print $2}' 200

如果你想看一個網(wǎng)站是否宕機,用下面的 bash 腳本:

# vi wget-url-check.sh #!/bin/bashif wget --spider -S "https://www.google.com" 2>&1 | grep -w "200\|301" ; then    echo "Google.com is up"else    echo "Google.com is down"fi

當你把腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# wget-url-check.sh HTTP/1.1 200 OKGoogle.com is up

如果你想看多個網(wǎng)站的狀態(tài),使用下面的 shell 腳本:

# vi curl-url-check-1.sh #!/bin/bashfor site in www.google.com google.co.in www.xyzzz.comdoif wget --spider -S "$site" 2>&1 | grep -w "200\|301" ; then    echo "$site is up"else    echo "$site is down"fiecho "----------------------------------"done

當你把上面腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh wget-url-check-1.sh HTTP/1.1 200 OKwww.google.com is up----------------------------------HTTP/1.1 301 Moved Permanentlygoogle.co.in is up----------------------------------www.xyzzz.com is down----------------------------------

方法 5:使用 lynx 命令檢測一個網(wǎng)站是否宕機

lynx 是一個在可尋址光標字符單元終端cursor-addressable character cell terminals上使用的基于文本的高度可配的 web 瀏覽器,它是最古老的 web 瀏覽器并且現(xiàn)在仍在活躍開發(fā)。

# lynx -head -dump http://www.magesh.co.in HTTP/1.1 200 OKDate: Fri, 15 Nov 2019 08:14:23 GMTContent-Type: text/htmlConnection: closeSet-Cookie: __cfduid=df3cb624024b81df7362f42ede71300951573805662; expires=Sat, 14-Nov-20 08:14:22 GMT; path=/; domain=.magesh.co.in; HttpOnlyVary: Accept-EncodingLast-Modified: Sun, 14 Jun 2015 11:52:38 GMTX-Cache: HIT from BackendCF-Cache-Status: DYNAMICServer: cloudflareCF-RAY: 535fc5704a43e694-LHR

如果你只想看 HTTP 狀態(tài)碼而不是返回的全部結(jié)果,用下面的 lynx 命令:

# lynx -head -dump https://www.magesh.co.in 2>&1 | awk '/HTTP\// {print $2}' 200

如果你想看一個網(wǎng)站是否宕機,用下面的 bash 腳本:

# vi lynx-url-check.sh #!/bin/bashif lynx -head -dump http://www.magesh.co.in 2>&1 | grep -w "200\|301" ; then    echo "magesh.co.in is up"else    echo "magesh.co.in is down"fi

當你把腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh lynx-url-check.sh HTTP/1.1 200 OKmagesh.co.in is up

如果你想看多個網(wǎng)站的狀態(tài),使用下面的 shell 腳本:

# vi lynx-url-check-1.sh #!/bin/bashfor site in http://www.google.com https://google.co.in http://www.xyzzz.comdoif lynx -head -dump "$site" 2>&1 | grep -w "200\|301" ; then    echo "$site is up"else    echo "$site is down"fiecho "----------------------------------"done

當你把上面腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh lynx-url-check-1.sh HTTP/1.0 200 OKhttp://www.google.com is up----------------------------------HTTP/1.0 301 Moved Permanentlyhttps://google.co.in is up----------------------------------www.xyzzz.com is down----------------------------------

方法 6:使用 ping 命令檢測一個網(wǎng)站是否宕機

ping 命令(Packet  Internet Groper)是網(wǎng)絡(luò)工具的代表,用于在互聯(lián)網(wǎng)協(xié)議(IP)的網(wǎng)絡(luò)中測試一個目標主機是否可用/可連接。通過向目標主機發(fā)送  ICMP 回應(yīng)請求報文包并等待 ICMP  回應(yīng)響應(yīng)報文來檢測主機的可用性。它基于已發(fā)送的包、接收到的包和丟失了的包來統(tǒng)計結(jié)果數(shù)據(jù),通常包含最小/平均/最大響應(yīng)時間。

# ping -c 5 2daygeek.com PING 2daygeek.com (104.27.157.177) 56(84) bytes of data.64 bytes from 104.27.157.177 (104.27.157.177): icmp_seq=1 ttl=58 time=228 ms64 bytes from 104.27.157.177 (104.27.157.177): icmp_seq=2 ttl=58 time=227 ms64 bytes from 104.27.157.177 (104.27.157.177): icmp_seq=3 ttl=58 time=250 ms64 bytes from 104.27.157.177 (104.27.157.177): icmp_seq=4 ttl=58 time=171 ms64 bytes from 104.27.157.177 (104.27.157.177): icmp_seq=5 ttl=58 time=193 ms --- 2daygeek.com ping statistics ---5 packets transmitted, 5 received, 0% packet loss, time 13244msrtt min/avg/max/mdev = 170.668/213.824/250.295/28.320 ms

附加 1:使用 telnet 命令檢測一個網(wǎng)站是否宕機

telnet 命令是一個使用 TELNET 協(xié)議用于 TCP/IP 網(wǎng)絡(luò)中多個主機相互通信的古老的網(wǎng)絡(luò)協(xié)議。它通過 23 端口連接其他設(shè)備如計算機和網(wǎng)絡(luò)設(shè)備。telnet 是不安全的協(xié)議,現(xiàn)在由于用這個協(xié)議發(fā)送的數(shù)據(jù)沒有經(jīng)過加密可能被黑客攔截,所以不推薦使用。大家都使用經(jīng)過加密且非常安全的 SSH 協(xié)議來代替 telnet。

# telnet google.com 80 Trying 216.58.194.46…Connected to google.com.Escape character is '^]'.^]telnet> quitConnection closed.

附加 2:使用 bash 腳本檢測一個網(wǎng)站是否宕機

簡而言之,一個 shell 腳本 就是一個包含一系列命令的文件。shell 從文件讀取內(nèi)容按輸入順序逐行在命令行執(zhí)行。為了讓它更有效,我們添加一些條件。這也減輕了 Linux 管理員的負擔。

如果你想想用 wget 命令看多個網(wǎng)站的狀態(tài),使用下面的 shell 腳本:

# vi wget-url-check-2.sh #!/bin/bashfor site in www.google.com google.co.in www.xyzzz.comdoif wget --spider -S "$site" 2>&1 | grep -w "200\|301" > /dev/null ; then    echo "$site is up"else    echo "$site is down"fidone

當你把上面腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh wget-url-check-2.sh www.google.com is upgoogle.co.in is upwww.xyzzz.com is down

如果你想用 wget 命令看多個網(wǎng)站的狀態(tài),使用下面的 shell 腳本:

# vi curl-url-check-2.sh #!/bin/bashfor site in www.google.com google.co.in www.xyzzz.comdoif curl -I "$site" 2>&1 | grep -w "200\|301" > /dev/null ; then    echo "$site is up"else    echo "$site is down"fidone

當你把上面腳本內(nèi)容添加到一個文件后,執(zhí)行文件,查看結(jié)果:

# sh curl-url-check-2.sh www.google.com is upgoogle.co.in is upwww.xyzzz.com is down

以上是“在Linux終端如何快速檢測網(wǎng)站是否宕機”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI