Linux - instalace a nastavení Nginx, PHP a MySQL (LEMP)

Linux - instalace a nastavení Nginx, PHP a MySQL (LEMP)

Modelová situace: Máme Linux Ubuntu server a chceme na něm nainstalovat a zproznit webserver LEMP = Linux, Nginx, MySQL a PHP.

ODPOVĚĎ


Postup instalace webserveru Nginx, PHP a MySQL na Linux může být následující:

#instalace nginx
apt install nginx

#instalace MySQL serveru MariaDB
apt install mariadb-server
#průvodce nastavením MySQL
mysql_secure_installation

#instalace PHP 7
apt install php-fpm php-mysql

#nginx - založení virtual hostu
vim /etc/nginx/sites-available/cloud.up4.cz

server {
listen 80;
root /var/www/cloud.up4.cz;
index index.php index.html;
server_name cloud.up4.cz;

location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

location ~ /\.ht {
deny all;
}
}


#povolit virtual host
ln -s /etc/nginx/sites-available/cloud.up4.cz /etc/nginx/sites-enabled/

#smazat default konfig
rm /etc/nginx/sites-enabled/default

#nginx reload
systemctl reload nginx

A to je celé...

---------------------------------------------

Nginx - nastavení phpMyAdmin


#instalace phpMyAdmin
apt install phpmyadmin

#nginx virtualhost phpMyAdmin na portu 81
vim /etc/nginx/sites-available/81_phpmyadmin

server {
listen 81;
root /usr/share/phpmyadmin;
index index.php index.html;

location / {
try_files $uri $uri/ =404;
client_max_body_size 100M;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

location ~ /\.ht {
deny all;
}
}

#povolit virtual host
ln -s /etc/nginx/sites-available/81_phpmyadmin /etc/nginx/sites-enabled/

#nastavení vyjímky pro port 81 ve firewalld
firewall-cmd --zone=public --permanent --add-port=81/tcp
firewall-cmd --reload

#reload nginx
systemctl reload nginx

---------------------------------------------
DODATEK:


#MariaDB doinstalace pluginu na kontrolu složitosti hesel
apt install mariadb-plugin-cracklib-password-check
mysql -u root
...
INSTALL SONAME 'cracklib_password_check';

#nastavení vyjímky pro port 80 a 443 ve firewallu UFW
ufw allow 80 && ufw allow 443

#test configu
nginx -t

#zahrnout konfiguraci sites-available do nginx.conf (např. na CentOS)
vim /etc/nginx/nginx.conf
- na konec bloku http doplnit
include /etc/nginx/sites-enabled/*.conf;
Jak se ti článek líbil?

Komentáře (0)

Přidat komentář