Nginx aneb jde to i bez Apache

Podobné dokumenty
Nginx v roli web serveru

HTTPS na virtuálních web serverech

Správa linuxového serveru: Zprovoznění Ruby aplikací s RVM, Thin a Nginx

Od CGI k FastCGI. Uvedené dílo podléhá licenci Creative Commons Uved te autora 3.0 Česko.

Správa linuxového serveru: Redmine: Thin a Nginx

Instalace Debianu pomocí debootstrap

Hosting a doména. Pavel Urbánek. srovnání providerů a WP požadavky.

Spouštění a konfigurace služeb. Přednáška OSY2 verze :00

Správa linuxového serveru: Webový server Cherokee

vpsfree.cz: linuxový server u neziskovky

Zabezpečení linuxového serveru

Instalace Linux Debian ve VirtualBoxu JAKUB MAZUCH BŘEZEN 2018

vpsfree.cz: komunitní platforma pro virtuální servery

SSH: dálková správa serveru

A p a c h e h t t p d Lukáš Zapletal lukas.zapletal@liberix.cz

BI-AWD. Administrace Webového a Databázového serveru Instalace webového serveru Apache httpd

Shibboleth v systému DSpace

Let s Encrypt nahoďte šifrování na webu

Jen správně nasazené HTTPS je bezpečné

Správa linuxového serveru: Webová rozhraní k poště (Squirrelmail a Roundcube)

Instalace a konfigurace web serveru. WA1 Martin Klíma

Administrace Unixu a sítí

Internet protokol, IP adresy, návaznost IP na nižší vrstvy

STUDIJNÍ MATERIÁL PRO TECHNICKOU CERTIFIKACI ESET Server Security, Serverové produkty

Činnost operačních systémů. Beránek Pavel 1. KŠPA

L i n u x j a k o r o u t e r, f i r e w a l l, D H C P s e r v e r, p r o x y a D N S c a c h e, 2. č á s t

Popište rozdíly HTTP/1.0 a 1.1 "Host" hlavicka pro name-based vhosty keepalive chunked encoding. (chce to malinko rozvést).

Závěrečná zpráva projektu FR CESNET 468R1/2012. Optimalizace správy síťových aplikací a zařízení AMU

Cobbler, Puppet, Func

Internet Information Services (IIS) 6.0

OpenSSL a certifikáty

Případová studie: Adresářové řešení pro webhosting pomocí ApacheDS. Lukáš Jelínek

BI-AWD. Administrace Webového a Databázového serveru Rozšiřující moduly serveru Apache httpd

WireGuard. nová a jednoduchá linuxová VPN. Petr Krčmář. 3. listopadu 2018

Uvedené dílo (s výjimkou obrázků) podléhá licenci Creative Commons Uved te autora 3.0 Česko.

vpsfree.cz: komunitní platforma pro virtuální servery

HTTP hlavičky pro bezpečnější web

NMS. Linux na Strahově. Radim Roška & Moris Bangoura InstallFest Silicon Hill

WWW technologie. HTTP protokol

Základy informatiky. Operační systémy

ADMINISTRACE UNIXU A SÍTÍ - AUS Metodický list č. 1

Let s Encrypt pojďme šifrovat na webu zadarmo

Alpine Linux: minimalistická distribuce nejen na server

Přihlášení do VPN Univerzity Pardubice Debian GNU/Linux Lenny 32/64-bit

VÝZVA. k podání nabídky

Příručka pro rychlou instalaci

v. 2425a Jak si na PC vypěstovat HTTP (WWW, Web) server a jak ho používat (snadno a rychle) by: Ing. Jan Steringa

metodický list č. 1 Internet protokol, návaznost na nižší vrstvy, směrování

Novinky v projektech Knot DNS a Knot Resolver. Daniel Salzman

Kam kráčí Linux: kontejnery, cloud, automatizace

Použití programu WinProxy

Užitečné odkazy:

Instalační manuál aplikace

ové služby a IPv6

Technologie pro zajištění bezpečnosti a vysoké dostupnosti webhostingových služeb v praxi. Ing. Tomáš Hála ACTIVE 24, s.r.o.

Jak se měří Internet

Linux na serveru. seminář Arcibiskupského gymnázia v Praze a gymnázia Boženy Němcové v Hradci Králové

Procesy a vlákna (Processes and Threads)

Střední odborná škola a Střední odborné učiliště, Hořovice

Server. Software serveru. Služby serveru

Filip Kolář F5 Networks F5 Networks, Inc 2

w w w. u l t i m u m t e c h n o l o g i e s. c z Infrastructure-as-a-Service na platformě OpenStack

Základní pojmy spojené s webovým publikováním ~ malý slovníček pojmů~ C3231 Základy WWW publikování Radka Svobodová, Stanislav Geidl

POČÍTAČOVÉ SÍTĚ A KOMUNIKACE

Webový server lapache

Jak se měří Internet

Úvod do PHP s přihlédnutím k MySQL

Jak spustit provoz v DR lokalitě snadno a rychle

Technická specifikace zařízení

Téma bakalářských a diplomových prací 2014/2015 řešených při

Dodávka UTM zařízení FIREWALL zadávací dokumentace

Střední odborná škola a Střední odborné učiliště, Hořovice

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

POČÍTAČOVÉ SÍTĚ A KOMUNIKACE OBOR: INFORMAČNÍ TECHNOLOGIE

Antonín Přibyl - Virtualizace Windows serveru s KVM hypervisorem

Návod k nastavení účtu v emclient (IceWarp Desktop) pro práci s IceWarp Mail serverem.

Střední průmyslová škola, Mladá Boleslav, Havlíčkova 456 Maturitní otázky z předmětu POČÍTAČOVÉ SÍTĚ

NoStress Hosting pro Magento

POČÍTAČOVÉ SÍTĚ Metodický list č. 1

Instalace a konfigurace OpenAdmin tool na M$ a Linuxu

NEJRYCHLEJŠÍ INTERNET V POLABÍ CENÍK

Rychlý průvodce konfigurací LAN SUITE 2002

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

Maturitní témata. Informační a komunikační technologie. Gymnázium, Střední odborná škola a Vyšší odborná škola Ledeč nad Sázavou.

Uživatelský modul Stunnel

Maturitní okruhy pro 1.KŠPA Kladno, s.r.o. Počítačové sítě a komunikace

Stavba operačního systému

Porovnání instalací linuxových distribucí Fedora x Debian Administrace počítačových sítí (2010/2011)

TSM for Virtual Environments Data Protection for VMware v6.3. Ondřej Bláha CEE+R Tivoli Storage Team Leader. TSM architektura IBM Corporation

Red Hat Enterprise Virtualization

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

NetIQ imanager Instalační příručka. Leden 2016

Opatření a vyzkoušení distribuce. Michal Dočekal

PSK3-20. Malý poštovní server I. Instalace

PORTFOLIO POSKYTOVANÝCH SLUŽEB V OBL ASTI KYBERNETICKÉ BEZPEČNOSTI L OG JIŘÍ RICHTER

VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Počítačové systémy. Generátor textů z LMS Moodle

Správa linuxového serveru: DNS a DHCP server dnsmasq

Certificate Transparency

Transkript:

Nginx aneb jde to i bez Apache Petr Krčmář 15. října 2013 Uvedené dílo (s výjimkou obrázků) podléhá licenci Creative Commons Uved te autora 3.0 Česko. Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 1 / 26

Obsah přednášky Co je to Nginx? Co všechno umí? Proč ho nasazovat? Architektura Nginx Nasazení v praxi Řešení běžných situací (PHP, CGI) Prostor na otázky Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 2 / 26

Logo Nginx Obrázek : Logo Nginx Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 3 / 26

Stručně z historie Igor Sysoev vývoj od roku 2002 první veřejná až 2004 současná řada 1.4 Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 4 / 26

Proč Nginx vznikl? Sysoev napsal mod_accel vadila nízká škálovatelnost Apache chtěl lepší, ale s podporou SSL, proxy, cache... šlo mu o výkon, škálovatelnost, pamět ovou náročnost rozhodl se pro jednovláknový server původně jako doplněk pro statický obsah k Apache https://www.ruby-forum.com/topic/151853 Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 5 / 26

Co je to Nginx? asynchronní event-driven server (hlavně) web server (ale nejen) reverzní proxy pro HTTP/S (nejen) SMTP, POP3, IMAP, HTTP cache často nasazován jako reverzní proxy pozor na IP spoofing na otevřený backend X-Forwarded-For Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 6 / 26

Co všechno umí? podávat statické soubory podporuje SSL/TLS virtuální hosty přepisování URL komprese load ballancing FastCGI (na všechno ostatní) a další Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 7 / 26

Event-driven? tradiční přístup: blokující fork pro každý požadavek velmi náročné na prostředky (pamět, přepínání kontextu) C10K (concurrently handling ten thousand connections) Nginx se neforkuje a je neblokující všechno vyřizují předem spuštěné workery malý (a předvídatelný) dopad na pamět server se neutaví ani při velkém provozu Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 8 / 26

Architektura Nginx Obrázek : Architektura Nginx Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 9 / 26

Zásadní vlastnosti nízká náročnost na prostředky 10K požadavků potřebuje 2,5 MB paměti umí zpracovat velké množství požadavků je odolný proti DDoS útokům (Slowloris) velmi volná licence (dvouklauzulová BSD) multiplatformní: Linux, BSD, Win, OS X, Solaris a další Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 10 / 26

Omezení (?) sám o sobě neumí PHP, CGI... neumí.htaccess Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 11 / 26

Kdo ho nasadil WordPress GitHub Netflix Dropbox Nokia Wikipedie Seznam Prima FTV Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 12 / 26

Rozšíření 13,6 % webů (Netcraft) 17,5 % na top 1M webů 25,9 % na top 100K webů 34,7 % na top 1K webů (W3Techs) velmi často ale jako reverzní proxy Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 13 / 26

Proč jsem ho nasadil já? nemám nic proti Apache experiment vyzkoušet něco jiného snaha dokázat, že to jde Nginx je super jako reverzní proxy, ale na web server patří Apache. Všechny aplikace dneska čekají Apache. Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 14 / 26

Nasazení v praxi Nginx je v distribucích má < 1 MB (jedna binárka) konfigurace v /etc/nginx/ základní konfigurace v /etc/nginx/nginx.conf jednotlivé virtuály v /etc/nginx/sites-available/ Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 15 / 26

Základní konfigurace user www-data; worker_processes 1; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; sendfile on; keepalive_timeout 65; tcp_nodelay on; gzip on; include /etc/nginx/sites-enabled/*; } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 16 / 26

Konfigurace virtuálu server { listen 80; ## listen for ipv4 listen [::]:80; ## listen for ipv6 server_name www.debian-linux.cz; access_log /var/log/nginx/debian.access.log; root /var/www/www.debian-linux.cz; } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 17 / 26

Řešení běžných situací rewrite bez www PHP CGI SSL reverzní proxy proč ne.htaccess Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 18 / 26

rewrite bez www server { listen 80; ## listen for ipv4 listen [::]:80; ## listen for ipv6 server_name debian-linux.cz; rewrite ^(.*) http://www.debian-linux.cz$1 permanent; } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 19 / 26

PHP (část s PHP-FPM) nainstalovat php5-fpm nadefinovat socket v /etc/php5/fpm/users.d/ [debian] listen = /var/run/php5-fpm.debian.sock user = debian group = www-debian Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 20 / 26

PHP (část s Nginx) try_files $uri $uri/ /index.php?q=$uri&$args; location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.debian.sock; fastcgi_index index.php; include fastcgi_params; } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 21 / 26

CGI nainstalovat fcgiwrap location /cgi-bin { gzip off; root /var/www/skript.domena.cz; fastcgi_pass unix:/var/run/fcgiwrap.socket; include fastcgi_params; } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 22 / 26

SSL do sekce server přidat ssl on; ssl_certificate /etc/nginx/ssl/server.crt; ssl_certificate_key /etc/nginx/ssl/server.key; Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 23 / 26

.htaccess Pokud potřebujete.htaccess, děláte to špatně. specialita Apache, bohužel uživatelé jsou na ni zvyklí rozsypání konfigurace po celém disku velmi náročná na disk IO (rekurzivní procházení addr) potřebujeme vlastně.htaccess? konvertor: http://winginx.com/htaccess Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 24 / 26

reverzní proxy upstream master_server { 127.0.0.1:8080 192.168.1.3:80... } server { listen...... location / { proxy_pass http://master_server; } } Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 25 / 26

Děkuji za pozornost Otázky? Petr Krčmář petr.krcmar@iinfo.cz Petr Krčmář (Root.cz) Nginx aneb jde to i bez Apache 15. října 2013 26 / 26