---
myst:
html_meta:
description: Set up web servers and proxy servers on Ubuntu Server with guides for Apache2, nginx, and Squid configuration.
---
(how-to-web-services)=
# Web services
Web servers are used to serve content over a network (or the Internet). If you want more of an introduction to the different types of web servers available in Ubuntu, check out our {ref}`introduction-to-web-servers`.
## Proxy servers
This section shows how to set up a Squid proxy caching server.
```{toctree}
:titlesonly:
Install a Squid server
```
## Web servers
Two of the most popular web servers in Ubuntu are Apache2 and nginx. This section covers the installation, configuration and extension of both.
### Apache2
```{toctree}
:hidden:
Install Apache2
Apache2 settings
Apache2 modules
```
* {ref}`Install Apache2 `
* {ref}`Configure Apache2 `
* {ref}`Extend Apache2 with modules `
### Nginx
```{toctree}
:hidden:
Install nginx
nginx settings
nginx modules
```
* {ref}`Install nginx `
* {ref}`Configure nginx `
* {ref}`Extend nginx with modules `
## Web programming
It is common to set up server-side scripting languages to support the creation of dynamic web content. Whichever scripting language you choose, you will need to have installed and configured your web and database servers beforehand.
```{toctree}
:titlesonly:
Install PHP
Install Ruby on Rails
```
## See also
* Explanation: {ref}`explanation-web-services`