Kuinka asentaa Nginx-verkkopalvelin Ubuntu/Debian-järjestelmään

Tämä oppaaja ohjaa sinua läpi prosessissa, jossa asennat ja määrittelet Nginx-verkkopalvelimen Ubuntun tai Debianin järjestelmään. Kurssin lopussa sinulla on perustiedot siitä, miten asentaa Nginxin, luoda palomuotoisia lohkoja (virtuaalisia isänniä), hallita sivustoja, määritellä palomuurisäännöt ja testata asennustasi.

Nginxin asennus

Asenna Nginx Ubuntun tai Debianin järjestelmään seuraamalla näitä vaiheita:

  1. Päivitä palvelimesi pakettiluettelo:
  2. sudo apt update
  3. Asenna Nginx käyttämällä seuraavaa komentoa:
  4. sudo apt install nginx
  5. Kun asennus on valmis, voit käynnistää Nginxin palvelun komennolla:
  6. sudo systemctl start nginx
  7. Varmista, että Nginx käynnistyy automaattisesti käynnistyksen yhteydessä, ottamalla se käyttöön komennolla:
  8. sudo systemctl enable nginx

Oletusasetukset

Nginx tulee oletusasetustiedostolla, joka sijaitsee polussa /etc/nginx/nginx.conf. Yleensä suositellaan jättämään tämä tiedosto muuttumattomaksi ja tehdä sivukohdaiset määritykset palomuotoisten lohkojen kautta.

Oletuspalomuotoinen lohko löytyy polusta /etc/nginx/sites-available/default ja se otetaan käyttöön luomalla symbolinen linkki siihen hakemistossa sites-enabled. Voit tarkastella sen sisältöä komennolla:

cat /etc/nginx/sites-available/default

Palomuotoisten lohkojen (virtuaalisien isäntien) luominen

Jotta voit hostata useita verkkotunnuksia yhdellä palvelimella, sinun täytyy luoda erilliset palomuotoiset lohkot jokaiselle verkkotunnukseksi.

  1. Luo uusi määritystiedosto hakemistossa sites-available:
  2. sudo nano /etc/nginx/sites-available/example.com
  3. Lisää seuraava perustapalomuotoinen lohko, korvaamalla example.com omalla verkkotunnuksellasi ja muokkaamalla polkuja tarvittaessa:
  4. server {
            listen 80;
            server_name example.com www.example.com;
    
            root /var/www/example.com/html;
            index index.html index.htm;
    
            location / {
                try_files $uri $uri/ =404;
            }
        }
  5. Luo dokumenttijuurikansio:
  6. sudo mkdir -p /var/www/example.com/html
  7. Aseta oikeat käyttöoikeudet web-juurikansiosta:
  8. sudo chown -R $USER:$USER /var/www/example.com/html
    sudo chmod -R 755 /var/www
  9. Luo esimerkkiindexitiedosto määrityksesi testaamiseksi:
  10. echo "Tervetuloa example.com:iin!" | sudo tee /var/www/example.com/html/index.html
  11. Ota uusi sivusto käyttöön luomalla symbolinen linkki hakemistossa sites-enabled:
  12. sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
  13. Tarkista Nginxin määritykset syntaksivirheiden varalta:
  14. sudo nginx -t
  15. Jos testi on onnistunut, uudelleenkäynnistä Nginx muutosten soveltamiseksi:
  16. sudo systemctl reload nginx

Palomuurin määrittely

Varmista, että palomuuri sallii liikennettä portissa 80 (HTTP) ja valinnaisesti portissa 443 (HTTPS).

  1. Jos käytät UFW:tä, salli HTTP-liikenne:
  2. sudo ufw allow 'Nginx Full'

Asetusten testaaminen

Vahvista, että Nginxin palomuotoinen lohkosi toimii oikein avaamalla web-selaimen ja siirrymällä verkkotunnuksesi tai IP-osoitteeseesi. Sinun pitäisi nähdä viestin "Tervetuloa example.com:iin!", jonka luodit aiemmin.

Vianmääritys

  • 403 Forbidden-virhe: Tarkista, että dokumenttijuurikansion käyttöoikeudet on asetettu oikein ja että Nginilla on lukuoikeus.
  • 502 Bad Gateway -virhe: Tämä viittaa usein taustapalvelun ongelmaan. Varmista, että kaikki sivustosi vaatimmat palvelut (esimerkiksi PHP-FPM) ovat käynnissä.
  • Nginx ei käynnisty: Tarkista Nginxin virheloki lisätietojen vuoksi komennolla sudo tail -f /var/log/nginx/error.log.