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.
Postup instalace webserveru Nginx, PHP a MySQL na Linux může být následující:
#instalace nginx
#instalace MySQL serveru MariaDB
#průvodce nastavením MySQL
#instalace PHP 7
#nginx - založení virtual hostu
#povolit virtual host
#smazat default konfig
#nginx reload
A to je celé...
---------------------------------------------
#instalace phpMyAdmin
#nginx virtualhost phpMyAdmin na portu 81
#povolit virtual host
#nastavení vyjímky pro port 81 ve firewalld
#reload nginx
---------------------------------------------
#MariaDB doinstalace pluginu na kontrolu složitosti hesel
...
#nastavení vyjímky pro port 80 a 443 ve firewallu UFW
#test configu
#zahrnout konfiguraci sites-available do nginx.conf (např. na CentOS)
- na konec bloku http doplnit
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 nginxA 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/tcpfirewall-cmd --reload#reload nginx
systemctl reload nginx---------------------------------------------
DODATEK:
#MariaDB doinstalace pluginu na kontrolu složitosti hesel
apt install mariadb-plugin-cracklib-password-checkmysql -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;