NGINX Car od Walkera Cahalla
Úvod
V tomto návodu vás provedeme instalací LEMP na vašem serveru CentOS 7. LEMP je softwarový balík, který se skládá ze čtyř částí (Linux, Nginx, MariaDB a PHP). Tento návod bude používat CentOS 7, který byl vydán 7. července 2014.
Předpoklady
Server s již nainstalovaným CentOS 7. Pokud nemáte server CentOS 7, můžete si pořídit spolehlivý virtuální privátní SSD server od Atlantic.Net a spustit jej za méně než 30 sekund!
Instalace EPEL a Remi v CentOS 7 pro LEMP
V tomto návodu nainstalujeme vydání Fedora epel, abychom rychle nainstalovali Nginx a Remi pro PHP pomocí následujícího příkazu:
sudo yum install epel-release sudo yum install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
Instalace a konfigurace NGINX v CentOS 7 pro LEMP
Nainstalujte NGINX pomocí následujícího příkazu:
sudo yum install nginx
Spusťte službu NGINX pomocí následujícího příkazu:
sudo systemctl start nginx
Nakonfigurujte NGINX tak, aby se spustil po restartování systému:
sudo systemctl enable nginx
Nyní budete mít na svém serveru nainstalovaný NGINX. To lze ověřit zadáním následující adresy IP do prohlížeče. Na stránce jsou také uvedeny všechny konfigurační soubory.
Nyní můžeme ověřit, že Apache funguje otevřením prohlížeče a zadáním adresy URL http://your-server's-address
. měli byste získat modrou testovací stránku Nginx podobnou obrázku níže.
Poznámka:Pokud neznáte svou IP adresu, spusťte následující příkaz:
sudo ip addr show eth0Příklad spuštění příkazu:ip addr show eth0 a získání 192.168.100.10 pro IP adresu.
V našem příkladu bychom vložili
http://192.168.100.10
do adresního řádku našeho prohlížeče.
Ukázka výchozí webové stránky Nginx
Instalace a konfigurace MariaDB na CentOS 7 pro LEMP
Nainstalujte MariaDB pomocí následujícího příkazu pro zahájení instalace:
sudo yum install mariadb-server
Spusťte službu pomocí následujícího příkazu:
sudo systemctl start mariadb
Nastavte heslo root MySQL pomocí následujícího příkazu:
sudo /usr/bin/mysql_secure_installation
Poznámka:Budete vyzváni řadou otázek. Jednoduše zadejte Y pro ano na všech z nich, viz snímek obrazovky níže:
Ukázkový výstup my_secure_installation.
Nakonfigurujte MariaDB tak, aby se spustila při restartování systému:
sudo systemctl enable mariadb
Instalace a konfigurace php-fpm na CentOS 7 pro LEMP
Nainstalujte php-fpm pomocí následujícího příkazu:
sudo yum --enablerepo=remi-php74 install php-fpm php-mysql
Spusťte službu php-fpm následujícím příkazem:
sudo systemctl start php-fpm
Ujistěte se, že php-fpm se spustí při bootování pomocí následujícího příkazu:
sudo systemctl enable php-fpm
Pomocí svého oblíbeného editoru upravte soubor /etc/php-fpm.d/www.conf
a změnit uživatele a skupinu z apache na nginx. Měl by vypadat podobně jako blok níže.
; Unix user/group of processes ; Note: The user is mandatory. If the group is not set, the default user's group ; will be used. ; RPM: apache Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx
Nyní musíme provést nějaké změny v konfiguračním souboru Nginx, aby php-fpm správně fungoval s Nginx. Pomocí svého oblíbeného editoru upravte soubor /etc/nginx/conf.d/default.conf
a proveďte následující změny nebo zkopírujte následující blok níže do svého souboru conf.
1) Přidejte index.php do umístění indexu
2) Změňte kořenové umístění na /usr/share/nginx/html
3) Odkomentujte sekci Pass PHP scripts to FastCGI.
4) Změňte fastcgi_param SCRIPT_FILENAME na použití /usr/share/nginx/html$fastcgi_script_name
# # The default server # server { listen 80 default_server; server_name _; #charset koi8-r; #access_log logs/host.access.log main; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { root /usr/share/nginx/html; index index.php index.html index.htm; } error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; include fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
Vytvořte testovací soubor PHP v následujícím adresáři pomocí následujícího příkazu:
sudo vi /usr/share/nginx/html/info.php
Do prostoru vložte následující kód, uložte jej a ukončete:
<?php phpinfo(); ?>
Restartujte apache, aby se všechny změny projevily:
sudo systemctl restart nginx
Otestujte svou stránku ve svém prohlížeči pomocí následujícího hypertextového odkazu změněného s vaší IP adresou:
http://VAŠE.IP.ADD.RESS/info.php
Měli byste odstranit soubor info.php, protože by ho mohl útočník použít proti vám. Odstraňte jej pomocí následujícího příkazu:
sudo rm /usr/share/nginx/html/info.php
Gratulujeme! Právě jste nainstalovali LEMP na svůj CentOS 7 Server. Děkujeme, že sledujete tento návod! Podívejte se s námi na nové aktualizace a procházejte naše škálovatelná VPS hostingová řešení pro firmy jakékoli velikosti.