Instalacja Nginx w Ubuntu 20.04 LTS
Poniższy poradnik opisuje jak zainstalować webserwer Nginx w systemie Ubuntu 20.04 LTS
Całość wykonamy przez konsolę w kilka minut.
Uruchamiamy terminal i dokonujemy aktualizacji i instalacji serwera nginx
1 | sudo apt update |
1 | sudo apt install nginx |
Dodajemy webserwer do firewalla:
1 | sudo ufw allow 'Nginx HTTP' |
Status usługi Nginx możemy zweryfikować wydając polecenie:
1 | systemctl status nginx |
Poniżej przykładowy wynik:
1 2 3 4 5 6 7 8 9 10 11 | Output ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-20 16:08:19 UTC; 3 days ago Docs: man:nginx(8) Main PID: 2369 (nginx) Tasks: 2 (limit: 1153) Memory: 3.5M CGroup: /system.slice/nginx.service ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─2380 nginx: worker process |
Teraz zaczniemy tworzyć strukturę plików dla vhosta:
Tworzymy strukturę katalogów:
1 | sudo mkdir -p /var/www/nasza_domena/html |
Nadajemy uprawnienia:
1 | sudo chown -R $USER:$USER /var/www/nasza_domena/html |
Ustawiamy chmod
1 | sudo chmod -R 755 /var/www/nasza_domena |
Tworzymy przykładowy index.html naszej witryny w celu sprawdzenia poprawności naszej konfiguracji:
1 | nano /var/www/nasza_domena/html/index.html |
Zawartość:
1 2 3 4 5 6 7 8 | <html> <head> <title>Witaj na domena.pl!</title> </head> <body> <h1>Sukces! Wszystko działa poprawnie!</h1> </body> </html> |
Zapisujemy plik.
Tworzymy nowy vhost:
1 | sudo nano /etc/nginx/sites-available/nasza_domena |
I zawartość:
1 2 3 4 5 6 7 8 9 10 11 12 13 | server { listen 80; listen [::]:80; root /var/www/nasza_domena/html; index index.html index.htm index.nginx-debian.html; server_name nasza_domena www.nasza_domena; location / { try_files $uri $uri/ =404; } } |
Robimy dowiązanie symboliczne:
1 | sudo ln -s /etc/nginx/sites-available/nasza_domena /etc/nginx/sites-enabled/ |
Edytujemy plik konfiguracyjny nginx
1 | sudo nano /etc/nginx/nginx.conf |
I odkomentowujemy linijkę:
1 | server_names_hash_bucket_size |
Całość powinna wyglądać następująco:
1 2 3 4 5 6 7 | ... http { ... server_names_hash_bucket_size 64; ... } ... |
restartujemy serwer nginx nasz vhost powinien już działać poprawnie.
1 | sudo systemctl restart nginx |