(introduction-to-web-servers)= # Introduction to web servers Web servers are used to serve web pages requested by client computers. Clients typically request and view web pages using web browser applications such as Firefox, Opera, Chromium, or Internet Explorer. If you're new to web servers, see this page for more information {ref}`on the key concepts `. ## Squid proxy server Squid is a popular, open-source, proxy caching server that can help optimise network efficiency and improve response times by saving local copies of frequently accessed content. Read more {ref}`about Squid proxy servers ` and what they can do, or find out {ref}`how to install a Squid server `. ### Web server Apache is the most commonly used web server on Linux systems, and the current version is Apache2. It is robust, reliable, and highly configurable. This set of guides will show you: - {ref}`How to install and configure Apache2 ` - {ref}`How to configure Apache2 for your needs ` - {ref}`How to extend Apache2's functionality with modules ` Nginx is a popular alternative web server also widely used on Linux, with a focus on static file serving performance, ease of configuration, and use as both a web server and reverse proxy server. - {ref}`How to install Nginx ` - {ref}`How to configure Nginx ` - {ref}`How to use Nginx modules ` ### Database server The database server, when included in the LAMP stack, allows data for web applications to be stored and managed. MySQL is one of the most popular open source Relational Database Management Systems (RDBMS) available, and you can find out in this guide {ref}`how to install MySQL ` -- or {ref}`PostgreSQL `, as another popular alternative. ### Scripting languages Server-side scripting languages allow for the creation of dynamic web content, processing of web forms, and interacting with databases (amongst other crucial tasks). PHP is most often used, and we can show you {ref}`how to install PHP `, or if you prefer, we can show you {ref}`how to install Ruby on Rails `. Whichever scripting language you choose, you will need to have installed and configured your web and database servers beforehand.