Ez a dokumentum egy előző változata!
Tartalomjegyzék
Nginx
- Szerző: Sallai András
- Copyright © Sallai András, 2012, 2017, 2022
- Web: https://szit.hu
Telepítés
Telepítéskor ügyeljünk arra, ha egy másik webszerver telepítve van, akkor azzal nincs konfliktusban a csomagkezelőben, azaz feltehető második webszerverként is.
apt-get install nginx
A legújabb verzió letölthetjük innen:
Beállítások
A beállítások a /etc/nginx könyvtárban találhatók.
Telepítés után a következő könyvtárak és fájlokat találjuk itt:
- conf.d/
- sites-available/
- sites-enabled/
- fastcgi_params
- koi-utf
- koi-win
- mime.types
- nginx.conf
- win-utf
A nginx.conf fájlban vannak a kezdőbeállíátsok.
Elsőnek kiszolgált fájl
A http szekcióba vegyük fel:
index index.html
A legújabb verzióban már location direktíva is használható. Valahogy így:
location / { index index.$geo.html index.html; }
Hibaoldalak
server { ... error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /404.html { root /usr/share/nginx/html; } location = /50x.html { root /usr/share/nginx/html; } ... }
URL is megadható:
error_page 403 http://zold.and/forbidden.html; error_page 404 =301 http://zold.and/notfound.html;
Lehet így is:
location /404.html { internal; }
Korlátozás:
limit_except GET { allow 192.168.5.0/24; deny all; }
Naplózás szabályozása:
location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ { access_log off; expires max; }
Virtualhost
A virtualhostot itt server block néven is használjuk.
A virtualhost beállításait a következő helyre tehetjük: /etc/nginx/sites-available. Legyen a példa kedvéért egy „piros” nevű tartománynév, „and” főtartomány-névvel.
mcedit /etc/nginx/sites-available/piros.and
Beállítások:
server{ listen 80; server_name piros.and; root /var/www/piros.and/htdocs; index index.html; # naplózás access_log /var/log/nginx/[host].access.log; error_log /var/log/nginx/[host].error.log; location / { } }
Engedélyezzük:
ln /etc/nginx/sites-available/piros.and /etc/nginx/sites-enabled/piros.and service nginx restart service nginx configtest service nginx status
PHP telepítés
# apt install php7.0-fpm php7.0-mysqlnd php7.0-xml
Indítsuk el a fastCGI folyamatkezelőt:
# service php7.0-fpm start # service php7.0-fpm status
Ha szeretném, hogy a php7.0-fpm induljon a számítógép újraindítása után is, akkor így állíthatjuk be:
# systemctl enable php7.0-fpm
Egy minimális beállítás PHP számára:
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.php index.html; server_name _; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; } }