# Install Nginx on Ubuntu 20.04: Schritt für Schritt erklärt

Die Webserver-Software [Nginx](https://www.ionos.de/digitalguide/server/konfiguration/nginx-grundlagen-installation-und-einrichtung/) lässt sich in nur wenigen Schritten unter [Ubuntu](https://www.ionos.de/digitalguide/server/knowhow/ubuntu-das-linux-system-fuer-jedermann/) installieren. Erfahren Sie, wie das geht und welche Anforderungen der Server hat.

## Welche Anforderungen hat ein Nginx-Webserver?

Für Nginx benötigen Sie einen Server mit Linux als Betriebssystem. Ubuntu hat sich als einfache und stabile Distribution bewehrt. Welche Kapazität Ihr [Ubuntu-Server](https://www.ionos.de/digitalguide/server/konfiguration/ubuntu-server/) benötigt, hängt von Ihrem Vorhaben ab. Schon eine kleine Hardware-Konfiguration kann für eine einfache Website genügen. Nginx ist dafür bekannt, Ressourcen zu sparen, ohne Leistung einzubüßen.

Für den Anfang empfiehlt sich:

- 100 GB Speicherplatz
- 6 GB RAM
- 1 CPU-Core

Wenn Sie sich bei IONOS für einen [Cloud Server](https://www.ionos.de/cloud/cloud-server "Cloud Server mieten – IONOS") mit Flex-Tarif entscheiden, können Sie die Hardware frei konfigurieren. Der Vorteil: Steigen Ihre Anforderungen, passen Sie Ihre Konfiguration einfach an.

---

### Tipp

Eventuell ist der Cloud Server nicht die richtige Lösung für Ihr Projekt. Bei IONOS finden Sie auch [Dedicated Server](https://www.ionos.de/server/dedicated-server "Dedicated Server günstig mieten"), bei denen nur Sie auf die Hardware zugreifen, und [vServer (VPS)](https://www.ionos.de/server/vps "vServer günstig mieten") mit vollständiger Virtualisierung.

---

Damit man Ihren [Webserver](https://www.ionos.de/digitalguide/server/knowhow/webserver-definition-hintergruende-software-tipps/ "Webserver: Definition, Hintergründe, Software-Tipps") im Internet auch aufrufen kann, benötigen Sie zusätzlich eine Domain.

## Schritt-für-Schritt-Anleitung: Nginx auf Ubuntu 20.04 installieren

In nur wenigen Schritten installieren und konfigurieren Sie Nginx unter Ubuntu.

### Schritt 1: Software herunterladen und installieren

Bevor Sie Nginx installieren, aktualisieren Sie zunächst die Paketverwaltung Ihres Systems:

```none
sudo apt update
sudo apt upgrade
```

Dann installieren Sie Nginx auf Ihrem System:

```none
sudo apt install nginx
```

Sie müssen nun nur noch den Installationsprozess bestätigen.

### Schritt 2: Port freigeben

Damit man von außen auf Ihren Webserver zugreifen kann, müssen Sie Ihre **Firewall konfigurieren**. Innerhalb von Ubuntu ist dafür das Programm „ufw“ zuständig. Für eine möglichst restriktive Einstellung wählen Sie folgenden Befehl:

```none
sudo ufw allow 'Nginx HTTP'
```

Damit geben Sie **Port 80** frei. Unter Umständen müssen Sie dies in den Einstellungen des Hosters wiederholen. Im IONOS Cloud Panel beispielsweise finden Sie die Port-Freigabe unter dem Punkt „Firewall“.

[![Bild: IONOS Cloud Panel: Firewall-Einstellungen mit freigegebenem Port 80](https://www.ionos.de/digitalguide/fileadmin/_processed_/9/8/csm_ionos-cloud-panel-nginx-ubuntu_8e3cc84295.webp "IONOS Cloud Panel: Firewall-Einstellungen mit freigegebenem Port 80")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/ionos-cloud-panel-nginx-ubuntu.png) Geben Sie Port 80 in den Einstellungen des Servers frei, damit Besucherinnen und Besucher Ihren Webserver aufrufen können.       ###  Schritt 3: Server testen, starten und stoppen

Nun können Sie prüfen, ob die Installation des Webservers funktioniert hat. Im Terminal geben Sie dafür diesen Befehl ein:

```none
systemctl status nginx
```

In der Ausgabe müssten Sie sehen, dass der Status des Servers „active“ ist. Zusätzlich können Sie den Server im Browser aufrufen. Geben Sie dafür in der Adresszeile des Browsers die **IP-Adresse des Servers** ein.

[![Bild: Willkommensbotschaft eines Nginx-Webservers im Browser](https://www.ionos.de/digitalguide/fileadmin/_processed_/6/a/csm_willkommensbotschaft-nginx-webserver_277d67cd84.webp "Willkommensbotschaft eines Nginx-Webservers im Browser")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/willkommensbotschaft-nginx-webserver.png) Wenn alles geklappt hat, begrüßt Sie diese Nginx-Willkommensnachricht.       Sie haben auch die Möglichkeit, den Server manuell zu starten:

```none
sudo nginx
```

Neben diesem Kommando gibt es noch weitere, mit denen Sie Ihren Nginx-Webserver kontrollieren:

- **stop**: Stoppt den laufenden Webserver sofort.
- **quit**: Stoppt den laufenden Webserver, nachdem angefangene Prozesse ausgeführt wurden.
- **reload**: Lädt die Konfigurationsdatei erneut.

Die Befehle folgen dabei folgendem Muster:

```none
sudo nginx stop
```

### Schritt 4: Testseite erstellen

Nginx hat unter Ubuntu 20.04 automatisch eine Website mit Willkommensbotschaft erzeugt. Sie finden das HTML-Dokument dazu unter */var/www/html/*. Man könnte in diesem Ordner nun weitere HTML-Dokumente erzeugen und so die eigene Website aufbauen. Besser ist es allerdings, den Ordner unberührt zu lassen und einen **neuen Ordner für die eigene Domain aufzubauen**. Dafür führen Sie folgenden Befehl aus:

```none
sudo mkdir -p /var/www/example.com/html
```

In diesem Beispiel verwenden wir den Domain-Namen *example.com*; Sie geben Ihren eigenen Domain-Namen an – sowohl hier als auch im Folgenden. Jetzt vergeben Sie noch Rechte:

```none
sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www/example.com
```

In dem neuen Ordner legen Sie Ihr erstes **HTML-Dokument** an – die Startseite Ihres Projekts:

```none
sudo nano /var/www/example.com/html/index.html
```

Diese Startseite gestalten Sie prinzipiell, wie Sie möchten. Hier ist ein einfaches Beispiel, das Sie mit Ihrem eigenen Inhalt füllen können:

```none
<html>
    <head>
        <title>Example</title>
    </head>
    <body>
        <h1>Test</h1>
        <p>Welcome to your first website<p>
    <div class="hash d-none" hidden>hash_7ffdaeb76b7074fed4dbad4a7968a3d463c3489e</div><script data-shy-copy-guard>(function(){var C=[0x00AD,0x200B,0x200C,0x200D,0x2060,0xFEFF];var s=function(t){for(var i=0;i<C.length;i++){t=t.split(String.fromCharCode(C[i])).join("");}return t;};document.addEventListener("copy",function(e){var sel=document.getSelection();if(!sel||sel.isCollapsed||!e.clipboardData){return;}e.clipboardData.setData("text/plain",s(sel.toString()));try{var d=document.createElement("div");d.appendChild(sel.getRangeAt(0).cloneContents());e.clipboardData.setData("text/html",s(d.innerHTML));}catch(x){}e.preventDefault();});})();</script></body>
</html>
```

Speichern und schließen Sie das Dokument.

Bisher würde der Webserver noch den alten Standardgruß ausspielen. Sie müssen Nginx also vermitteln, dass der neue Content aufgerufen werden soll. Dafür erstellen Sie eine neue Konfigurationsdatei im Nginx-Order:

```none
sudo nano /etc/nginx/sites-available/example.com
```

In diese neue Datei fügen Sie einen Server-Block ein:

```none
server {
    listen 80;
    listen [::]:80;
    root /var/www/example.com/html;
    index index.html index.htm index.nginx-debian.html;
    server_name example.com www.example.com;
    location / {
        try_files $uri $uri/ =404;
    }
}
```

Achten Sie darauf, dass Sie hier den richtigen freien Port angeben. Sind Sie unserer Anleitung gefolgt, dann haben Sie ebenfalls Port 80 freigegeben. Speichern und schließen Sie die Datei.

Sie haben diese Konfigurationsdatei im Ordner „sites-available“ erstellt. Nun müssen Sie im Ordner „sites-enabled“ eine **Verknüpfung herstellen**. Diesen Ordner verwendet Nginx beim Hochfahren, um zu ermitteln, welche Website ausgespielt werden soll.

```none
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
```

Starten Sie den Server neu:

```none
sudo systemctl restart nginx
```

Wenn Sie jetzt Ihre Domain im Browser aufrufen, sollte Ihre neue Website angezeigt werden.


This is a markdown version of: [https://www.ionos.de/digitalguide/server/konfiguration/nginx-auf-ubuntu-2004-installieren/](https://www.ionos.de/digitalguide/server/konfiguration/nginx-auf-ubuntu-2004-installieren/) for AI/LLM consumption.