Jak nainstalovat LEMP – LNMP na Centos7
Jak nainstalovat LNMP či možno použít akronym LEMP
Zkratka LNMP je odvozená od LAMP (Linux/Apache/Mysql/PHP) a v současné době lze považovat za zkratku: Linux + Nginx + MariaDb + PHP. A protože se to blbě čtě tak vznikl akronym: LEMP
 (Linux operating system, s  ENginx web server   MariaDB/MySQL database a PHP.
Takže začneme! Co potřebujeme:
+ čerstvě nainstalovaný Linux ( v mém případě CentOS7 v minimální konfiguraci)
+ připojení k internetu
1. příprava
 
na Centos provedeme aktualizaci:
yum update
Poznámka: pokud by něco nešlo, tak můžeme zkusit vypnout SElinux (příkaz: setenforce 0) a ověřit si že to je tímto. A samozřejmě to vyřešit a pak to zase zapnout pomocí: setenforce 1
2. instalace nginx
přidáme nginx yum repozitář a nainstalujeme nginx:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpmsudo yum install nginx
spustíme nginx a zajistíme aby se po startu serveru sám spouštěl:
sudo systemctl start nginx.servicesudo systemctl enable nginx.service
nastavíme firewall:
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
 Nyní otestujeme, že web server běží zadáním ip adresy serveru do prohlížeče.
 
Pokud je vše ok, tak uvidíte nápis:
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org.
 Commercial support is available at nginx.com.
Thank you for using nginx.
 
3. Nainstalujeme MariaDB server
sudo yum install mariadb-server mariadbsudo systemctl start mariadbsudo systemctl enable mariadb
sudo mysql_secure_installation
 
Nyní se spustí doinstalace a donastavení mariaDB serveru. Zvolíte si heslo pro roota a projdete si zbytek instalace. Stačí mačkat enter.
 
4. Instalace PHP
nainstalujeme si PHP:
sudo yum install php php-mysql php-fpm
Ve vašem oblíbeném editoru (mc,vi,vim,nano) si zeditujte soubor /etc/php.ini:
sudo vi /etc/php.iniNajděte hodnotu: cgi.fix_pathinfo odkomentujte ji a zeditujte na:cgi.fix_pathinfo = 0
soubor uložte a otevřete:sudo vi /etc/php-fpm.d/www.confNajděte hodnotu "listen" a změňte ji na:
listen = /var/run/php-fpm/php-fpm.sock
Uložte soubor.
Spusťe php-fpm a nastavete aby se spouštěl při startu
sudo systemctl start php-fpmsudo systemctl enable php-fpm
Doinstalujte doplňky:
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel mhash php-mcrypt lynx wget unzip
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm rpm -ivh epel-release-7-5.noarch.rpm yum install --enablerepo="epel" php-mcrypt 
 5. Nastavte Nginx aby používal php Zeditujte soubor:
sudo vi /etc/nginx/conf.d/default.conf
a uložte do něj tuto konfiguraci (fialový text změňte dle své volby):
server {
    listen       80;
    server_name  jmeno_serveru_nebo_ip;
    root   /usr/share/nginx/html;
    index index.php index.html index.htm;
    location / {
        try_files $uri $uri/ =404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}
 restartněte server. Vytvořte si testovací php soubor (třeba info.php s <?php info();?> a otestujde že je vše ok.
6. nastavení serveru pro běh více domén
A protože když už máme server, tak většinou chceme aby nám na něm běželo více domén, tak vytvoříme soubor: /etc/nginx/conf.d/virtual.conf
 s obsahem:
 
server {
            listen   80;
            server_name  www.akronymy.cz;
            rewrite ^/(.*) http://domena1.cz/$1 permanent;
           }
server {
            listen   80;
            server_name domena1.cz;
            access_log /var/www/vhosts/domena1_cz/log/access.log;
            error_log /var/www/vhosts/domena1_cz/log/error.log;
            location / {
                        root   /var/www/vhosts/domena1_cz/domena1.cz/;
                        index  index.html;
                        }
            }
server {
            listen   80;
            server_name  www.domena2.com;
            rewrite ^/(.*) http://domena2.com/$1 permanent;
           }
            
            
server {
            listen   80;
            server_name domena2.com;
            access_log /var/www/vhosts/domena2_com/log/access.log;
            error_log /var/www/vhosts/domena2_com/log/error.log;
            location / {
                        root   /var/www/vhosts/domena2_com/domena2.com/;
                        index  index.html;
                        }
            }            
Pohled na tuto konfiguraci mluví za vše a proto není potřeba více popisovat

Nějaké ty komentáře