User Tools

Site Tools


navody:server:nginx

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
navody:server:nginx [2014/11/05 10:24] – Page moved from server:nginx to navody:server:nginx adminnavody:server:nginx [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-===== Nginx ===== 
  
-Webový server Nginx [endžin iks] se vyznačuje především nízkými nároky na paměť a obecně systémové zdroje. K obsluze požadavků přistupuje asynchronně a využívá neblokující rozhraní řízené událostmi. Na rozdíl třeba od Apache tak každý další příchozí požadavek nezpůsobí forkování web serveru v paměti, aby každý požadavek dostal svůj obslužný proces. Nginx má v paměti jeden (či předem definovaný počet) worker, který obsluhuje všechny požadavky. 
- 
-Nginx se velmi často používá jako reverzní proxy server, který přijímá požadavky od klientů a pak je nechá vyřídit například Apache. Lze jej ale stejně dobře použít i jako samostatně stojící web server. Ostatně i tato znalostní báze běží na Nginx. 
- 
-==== Instalace ==== 
- 
-Stačí nainstalovat příslušný balíček, v Debianu či Ubuntu použijte příkaz ''aptitude install nginx''. 
- 
-==== Konfigurace ==== 
- 
-Základní konfigurace web serveru se provádí v souboru ''/etc/nginx/nginx.conf''. Základní volby jsou: ''user'' definuje uživatele, pod kterým Nginx běží; ''worker_processes'' určuje počet procesů Nginx, které budou vyřizovat požadavky. Pokud chcete využít více procesorových jader, nastavte vyšší počet procesů. 
- 
-==== Virtuální servery ==== 
- 
-Virtuály pro jednotlivé domény/služby se definují v adresáři ''/etc/nginx/sites-available/''. Pokud chcete některý z nich zapnout, vytvořte symbolický odkaz v adresáři ''/etc/nginx/sites-enabled/''. Vzorová konfigurace virtuálu může vypadat takto: 
- 
-<code> 
- 
-# příklad přesměrování 
-server { 
-        listen   80; # poslouchej na ipv4 
-        listen   [::]:80; # poslouchej na ipv6 
-        server_name server.cz; # jméno serveru 
-        rewrite ^(.*) http://www.server.cz$1 permanent; # přesměrování na adresu s www. 
-} 
- 
-# hlavní část konfigurace 
-server { 
-        listen   80; 
-        listen   [::]:80; 
-        server_name server.cz; 
-        root /var/www/server/cz; # adresář s obsahem webu 
-        index index.php index.html index.htm; # pořadí načítaných souborů s indexem 
-} 
-</code> 
- 
-Toto je základní konfigurace pro statický web. Pokud jste s konfigurací spokojeni, stačí ji znovu načíst pomocí ''service nginx reload''. 
- 
-==== PHP ==== 
- 
-Nginx neumí přímo interpretovat PHP, je třeba nainstalovat a spustit službu ''php5-fpm''. V adresáři ''/etc/php5/fpm/users.d/'' je třeba založit soubor s konfigurací konkrétního uživatele, pod kterým ten který PHP proces poběží. Kromě jména uživatele je také třeba zvolit, kde bude ležet socket, na který se bude Nginx připojovat. 
- 
-Poté stačí do konfigurace Nginx připsat deklaraci pro zpracování souborů s příponou ''.php'' pomocí FastCGI rozhraní PHP-FPM. Tuto část vložte **dovnitř sekce server** z předchozího příkladu. 
- 
-<code>       location ~ \.php$ { 
-        fastcgi_pass   unix:/var/run/php5-fpm.user.sock; 
-                fastcgi_index  index.php; 
-                include        fastcgi_params; 
-        } 
-</code> 
navody/server/nginx.1415183075.txt.gz · Last modified: 2014/11/05 10:24 by admin