From LinuxReviews
Jump to navigationJump to search
Original author(s)Lou Montulli, Michael Grobe, Charles Rezac
Developer(s)Thomas Dickey
Initial release1992; 28 years ago (1992)
Stable release
2.8.6 / October 11, 2006
Operating systemCross-platform
TypeWeb browser

Lynx is a text-only terminal web browser with SSL support. It does not support images, CSS styling, javascript or much else beyond displaying text versions of websites using it's HTML structure. It will allow you to get basic information from most websites but not the most modern which are mostly blank pages without JavaScript.

Lynx has been around since 1992 and it is the oldest web browser still being actively developed.

Features and usability

Lynx v2.8.6 in 2007.

Lynx is navigated using keyboard keys. It's easy to use. Some keys are different compared to graphical browsers. As an example, you press g to visit an URL, not ctrl-l. There is a built-in help and learning how to use it is easy enough.

The browser itself is fine in terms of usability. It's main problem is that it simply isn't well suited for the modern Internet.

Lynx supports SSL and most modern HTML features including tables which are formatted using spaces. But that's it. There is no support for CSS elements or JavaScript or images or video. Images and video can be opened using external programs. That is not very practical.

The lack support for modern web features, which in fairness can't really be done very well in a text-based terminal, makes lynx impractical to use on the vast majority of websites on today's Internet. Here is an example of what some "modern" websites look like in Lynx:


That a lot of sites simply aren't usable in Lynx isn't it's fault but it is a present truth.

Lynx is fine if you want to lookup some Linux-related information real quick. A lot of Linux-related websites tend to be somewhat usable. Don't expect any modern "news" or "social media" site to work with it.

Using Lynx To Inspect HTTP Headers

Lynx can be a useful tool for viewing some things other browsers can't show you. HTTP headers is one of those things. You can use the -head parameter to see any HTTP headers a web server responds with.

lynx -head

will show you all kinds of incriminating information about this website and the server it runs on:

HTTP/1.0 301 Moved Permanently
Date: Mon, 17 Aug 2020 18:28:24 GMT
Server: Apache
Strict-Transport-Security: max-age=15768000;
X-Powered-By: PHP/7.3.20
X-Content-Type-Options: nosniff
Vary: Accept-Encoding,Cookie
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: private, must-revalidate, max-age=0
Last-Modified: Mon, 17 Aug 2020 18:28:24 GMT
Connection: close
Content-Type: text/html; charset=utf-8