Check a Website Availability from the Linux Command Line

You can easily test a a website availability from the Linux command line and get the status codes from the web-server using commands like TELNET or CURL.

Check a website availability with CURL

Execute the following command to check whether a web site is up, and what status message the web server is showing:

$ curl -Is http://www.shellhacks.com | head -1
HTTP/1.1 200 OK

Status code ‘200 OK’ means that the request has succeeded and a website is reachable.

Here is an another example that shows you how curl displays different status codes.

$ curl -Is http://shellhacks.com | head -n 1
HTTP/1.1 301 Moved Permanently

You’ll notice that if you visit: http://shellhacks.com you are redirected to http://www.shellhacks.com, because I prefer to have www in my site’s URL. I do this by implementing a 301 Redirect (Permanently moved) for any visitor who goes to http://shellhacks.com.

You can also check the availability of a particular page on the site:

$ curl -Is http://www.shellhacks.com/en/Bash-Colors | head -n 1
HTTP/1.1 200 OK

Read more: Status Code Definitions

Check a website availability with TELNET

You can also test website availability and get the response code using telnet command:

$ telnet www.shellhacks.com 80
Trying 91.206.200.119...
Connected to www.shellhacks.com.
Escape character is '^]'.
HEAD / HTTP/1.0
HOST: www.shellhacks.com
<PRESS ENTER>
<PRESS ENTER>

You will get the output as follows:

HTTP/1.1 200 OK
Server: nginx/1.1.10
Date: Sun, 26 May 2013 19:29:46 GMT
***

That also means that the website is OK.

0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
Linux How to reset a root password on Fedora
Viewed 631 times since Sun, Dec 6, 2020
Migrate a Linux System from Red Hat Enterprise to CentOS
Viewed 8737 times since Fri, May 15, 2020
LVM basic
Viewed 1141 times since Sat, Jun 2, 2018
LVM: Move allocated PE between Physical Volumes
Viewed 1851 times since Sat, Jun 2, 2018
How To: Create Self-Signed Certificate – OpenSSL
Viewed 1369 times since Mon, Feb 18, 2019
How setting the TZ environment variable avoids thousands of system calls
Viewed 8272 times since Mon, May 21, 2018
Manage SSH Key File With Passphrase
Viewed 1094 times since Tue, Mar 5, 2019
Linux An introduction to swap space on Linux systems
Viewed 1344 times since Thu, Jan 23, 2020
List usernames instead of uids with the ps command for long usernames
Viewed 984 times since Wed, Jul 25, 2018
Linux nslookup Command Examples for DNS Lookup
Viewed 7262 times since Sat, Sep 29, 2018