Nginx, MariaDB y PHP7.2 se llaman (LEMP). Los siguientes son los pasos para instalar LEMP en Ubuntu 18.04 LTS.
- Permítanos actualizar nuestro paquete de Ubuntu.
# sudo apt update
# sudo apt upgrade - Instale el servidor web Nginx. Es un servidor de alto rendimiento y se utiliza como proxy inverso.
# sudo apt install Nginx
- Inicie y habilite Nginx. Iniciará automáticamente el Nginx en el momento del arranque.
# sudo systemctl start nginx
# sudo systemctl enable nginx - Puede verificar la versión de Nginx con el siguiente comando.
# nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
Puede acceder a la dirección IP del servidor en el navegador y traerá la página predeterminada de Nginx.
Podemos configurar www-data (usuario de Nginx) como propietario del directorio web.
# sudo chown www-data:www-data /usr/share/nginx/html -R
- Instale MariaDB con el siguiente comando. MariaDB es un reemplazo para MySQL.
# sudo apt install mariadb-server mariadb-client
- Inicie y habilite MariaDB. Iniciará automáticamente MariaDB en el momento del arranque.
# sudo systemctl start mariadb
# sudo systemctl enable mariadb - Ejecute el siguiente comando para el script de seguridad posterior a la instalación.
# sudo mysql_secure_installation
- Ingrese la contraseña raíz de MySQL y confirme la contraseña y establezca la configuración requerida.
- Verifique la versión de MariaDB con el siguiente comando.
# mariadb --version
Dará la siguiente salida.
# mariadb Ver 15.1 Distrib 10.1.43-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
- De forma predeterminada, PHP 7.2 se incluye con el repositorio de Ubuntu predeterminado para 18.04. Sin embargo, ingrese el siguiente comando para instalar php7.2 con algunas extensiones comunes.
# sudo apt install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl
- Iniciar y habilitar PHP 7.2-fpm Iniciará automáticamente PHP en el momento del arranque.
# sudo systemctl start php7.2-fpm
# sudo systemctl enable php7.2-fpm - Ejecute el siguiente comando para eliminar el enlace simbólico predeterminado en el directorio habilitado para sitios.
# sudo rm /etc/nginx/sites-enabled/default
- Cree un nuevo archivo de bloque de servidor dentro del directorio /etc/nginx/conf.d/.
# sudo nano /etc/nginx/conf.d/default.conf
- Agregue el siguiente texto en default.conf
server { listen 80; listen [::]:80; server_name _; root /usr/share/nginx/html/; index index.php index.html index.htm index.nginx-debian.html; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } # A long browser cache lifetime can speed up repeat visits to your page location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ { access_log off; log_not_found off; expires 360d; } # disable access to hidden files location ~ /\.ht { access_log off; log_not_found off; deny all; } }
- Guarde y ciérrelo y reinicie el servicio Nginx.
# sudo systemctl reload nginx
- Probaremos el PHP-FPM con el servidor web NGINX. Vamos a crear la página phpinfo.php en el directorio raíz.
# sudo nano /usr/share/nginx/html/info.php
- Pegue el código de información php como se muestra a continuación.
<?php phpinfo();>