Este tutorial le mostrará cómo instalar la pila LOMP (OpenLiteSpeed, MariaDB y PHP8.0) en Ubuntu 20.04/18.04. Una pila de software es un conjunto de herramientas de software agrupadas. LOMP significa Linux, OpenLiteSpeed, MariaDB/MySQL y PHP, que pueden impulsar sitios web y aplicaciones web dinámicos.
¿Por qué OpenLiteSpeed es mejor que Apache/Nginx?
Anteriormente discutimos cómo instalar la pila LAMP (Apache) y la pila LEMP (Nginx). ¿Por qué nos cambiamos a OpenLiteSpeed? Porque tiene mucho más rendimiento.
- 5 veces más solicitudes por segundo.
- LSAPI permite un mejor rendimiento de PHP que mod_PHP y PHP-FPM.
- Uso de CPU y memoria extremadamente bajo.
HTTP/3 . Dado que OpenLiteSpeed se centra en la velocidad, adopta nuevas tecnologías más rápido que Nginx.- PageSpeed integrado y ModSecurity módulo. Si usa Nginx, debe volver a compilar estos dos módulos cada vez que actualice Nginx.
- Caché de página incorporado integración con aplicaciones web populares como WordPress, Magento, Joomla, Prestashop, Opencart, Drupal, xenForo, Laravel, Shopware y MediaWiki.
- Conexión anti-DDoS y regulación del ancho de banda.
- Compresión Brotli incorporada para archivos estáticos.
- Panel de administración basado en la web.
Requisitos
Para seguir este tutorial, necesita un sistema operativo Ubuntu 20.04/18.04 ejecutándose en un servidor remoto.
Si está buscando un VPS (servidor privado virtual) de alto rendimiento, puede ir al sitio web de ScalaHosting para crear una cuenta. Elija el plan VPS Linux autogestionado. Utilice el código de cupón linuxbabe2021
en la página de pago para ahorrar $100 si elige pagar 12 meses por adelantado. Puede seguir el tutorial vinculado a continuación para configurar correctamente su servidor Linux VPS en ScalaHosting.
- Cómo crear un servidor VPS Linux en ScalaHosting
Y si necesita configurar la pila LOMP con un nombre de dominio, recomiendo comprar nombres de dominio de NameCheap porque el precio es bajo y brindan protección de privacidad whois gratis de por vida.
Paso 1:Actualizar paquetes de software
Antes de instalar la pila LOMP, es una buena práctica actualizar el repositorio y los paquetes de software ejecutando el siguiente comando en su sistema operativo Ubuntu 20.04/18.04.
sudo apt update;sudo apt upgrade
Paso 2:Instale el servidor web OpenLiteSpeed
OpenLiteSpeed no está incluido en el repositorio de software predeterminado de Ubuntu, por lo que tendremos que instalarlo desde el repositorio oficial original. Ejecute el siguiente comando para agregar el repositorio OpenLiteSpeed a su sistema Ubuntu.
wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | sudo bash
El comando anterior también importará la clave OpenLiteSpeed GPG al sistema Ubuntu para que APT pueda verificar la integridad del paquete durante la instalación. Luego instale OpenLiteSpeed con:
sudo apt install -y openlitespeed
Una vez instalado, podemos habilitar OpenLiteSpeed para que se inicie automáticamente en el momento del arranque ejecutando el siguiente comando.
sudo systemctl enable lshttpd
Luego inicie OpenLiteSpeed con este comando:
sudo systemctl start lshttpd
Ahora comprueba su estado.
sudo systemctl status lshttpd
Salida de muestra:
● lshttpd.service - OpenLiteSpeed HTTP Server Loaded: loaded (/etc/systemd/system/lshttpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-05-31 04:59:06 EDT; 14min ago Main PID: 7213 (litespeed) CGroup: /system.slice/lshttpd.service ├─7213 openlitespeed (lshttpd - main) ├─7224 openlitespeed (lscgid) ├─7253 openlitespeed (lshttpd - #01) └─7254 openlitespeed (lshttpd - #02) May 31 04:59:04 focal systemd[1]: Starting OpenLiteSpeed HTTP Server... May 31 04:59:04 focal lswsctrl[7171]: [OK] litespeed: pid=7213. May 31 04:59:06 focal systemd[1]: Started OpenLiteSpeed HTTP Server.
“Habilitado ” indica que el inicio automático en el momento del arranque está habilitado y podemos ver que OpenLiteSpeed se está ejecutando. Si el comando anterior no se cierra inmediatamente después de ejecutarse. Tienes que pulsar “q ” para que se cierre.
Compruebe la versión de OpenLiteSpeed.
/usr/local/lsws/bin/openlitespeed -v
Salida:
LiteSpeed/1.6.21 Open module versions: modgzip 1.1 cache 1.62 modinspector 1.1 uploadprogress 1.1 mod_security 1.4 (built: Tue Apr 6 13:20:57 UTC 2021) module versions: modgzip 1.1 cache 1.62 modinspector 1.1 uploadprogress 1.1 mod_security 1.4
De manera predeterminada, OpenLiteSpeed escucha en el puerto 8088, debemos hacer que escuche en el puerto 80. Edite el archivo de configuración principal con un editor de texto de línea de comandos como Nano.
sudo nano /usr/local/lsws/conf/httpd_config.conf
Encuentra las siguientes líneas
listener Default{ address *:8088 secure 0 map Example * }
Cambiar 8088
a 80
.
listener Default{ address *:80 secure 0 map Example * }
Guarde y cierre el archivo. Luego reinicie OpenLiteSpeed.
sudo systemctl restart lshttpd
Nota :Si tiene otros servidores web como Nginx ejecutándose en el servidor, debe detenerlo y luego reiniciar OpenLiteSpeed.
sudo systemctl stop nginx
Ahora escriba la dirección IP pública de su servidor Ubuntu 20.04/18.04 en la barra de direcciones del navegador. Debería ver la página web "Felicitaciones", lo que significa que el servidor web OpenLiteSpeed se está ejecutando correctamente.
Si la conexión se rechaza o no se completa, es posible que haya un firewall que impida las solicitudes entrantes al puerto TCP 80. Si está utilizando el firewall de iptables, debe ejecutar el siguiente comando para abrir el puerto TCP 80.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Si está utilizando el firewall UFW, ejecute este comando para abrir el puerto TCP 80.
sudo ufw allow http
De forma predeterminada, el servidor web OpenLiteSpeed se ejecuta como nobody
usuario y nogroup
grupo. El directorio raíz del documento predeterminado es /usr/local/lsws/Example/html
.
Paso 3:Instale el servidor de base de datos MariaDB
MariaDB es un reemplazo directo para MySQL. Está desarrollado por antiguos miembros del equipo de MySQL que están preocupados de que Oracle pueda convertir a MySQL en un producto de código cerrado. Ingrese el siguiente comando para instalar MariaDB en Ubuntu 20.04/18.04.
sudo apt install mariadb-server mariadb-client
Una vez instalado, el servidor MariaDB debería iniciarse automáticamente. Usa systemctl para comprobar su estado.
systemctl status mariadb
Salida:
● mariadb.service - MariaDB 10.3.29 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 9161 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 9451) Memory: 64.7M CGroup: /system.slice/mariadb.service └─9161 /usr/sbin/mysqld
Si no se está ejecutando, inícielo con este comando:
sudo systemctl start mariadb
Para permitir que MariaDB se inicie automáticamente en el momento del arranque, ejecute
sudo systemctl enable mariadb
Ahora ejecute el script de seguridad posterior a la instalación.
sudo mysql_secure_installation
Cuando le pida que ingrese la contraseña raíz de MariaDB, presione la tecla Intro ya que la contraseña raíz aún no está configurada. Luego ingrese y para establecer la contraseña raíz para el servidor MariaDB.
A continuación, puede presionar Entrar para responder a todas las preguntas restantes, lo que eliminará al usuario anónimo, deshabilitará el inicio de sesión raíz remoto y eliminará la base de datos de prueba. Este paso es un requisito básico para la seguridad de la base de datos MariaDB. (Observe que Y está en mayúscula, lo que significa que es la respuesta predeterminada).
De forma predeterminada, el paquete MaraiDB en Ubuntu usa unix_socket
para autenticar el inicio de sesión del usuario, lo que básicamente significa que puede usar el nombre de usuario y la contraseña del sistema operativo para iniciar sesión en la consola de MariaDB. Entonces puede ejecutar el siguiente comando para iniciar sesión sin proporcionar la contraseña de root de MariaDB.
sudo mariadb -u root
Para salir, ejecuta
exit;
Verifique la información de la versión del servidor MariaDB.
mariadb --version
Como puede ver, hemos instalado MariaDB 10.3.29.
mariadb Ver 15.1 Distrib 10.3.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Paso 4:Instale PHP8.0
Cuando instalamos OpenLiteSpeed, automáticamente instala el lsphp73
paquete, que es una compilación de PHP 7.3 hecha para OpenLiteSpeed. Podemos instalar PHP8.0 con el siguiente comando.
sudo apt install lsphp80 lsphp80-mysql lsphp80-common lsphp80-opcache lsphp80-curl
Compruebe el número de versión.
/usr/local/lsws/lsphp80/bin/php8.0 -v
Salida de muestra:
PHP 8.0.6 (cli) (built: May 7 2021 15:17:48) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.6, Copyright (c) Zend Technologies with Zend OPcache v8.0.6, Copyright (c), by Zend Technologies
Aunque instalamos solo 5 paquetes de PHP8.0, la compilación PHP de OpenLiteSpeed viene con muchos módulos de PHP. Puede verificar los módulos PHP habilitados con el siguiente comando.
/usr/local/lsws/lsphp80/bin/php8.0 --modules
Paso 5:Pruebe PHP
Hay un phpinfo.php
archivo bajo /usr/local/lsws/Example/html
directorio, para que pueda ingresar server-ip-address/phpinfo.php
en la barra de direcciones del navegador para probar PHP con el servidor web OpenLiteSpeed, Reemplace sever-ip-address
con tu IP actual.
Debería ver la información de PHP de su servidor. Esto significa que los scripts PHP pueden ejecutarse correctamente con el servidor web OpenLiteSpeed. Están conectados a través de la API LiteSpeed (LSAPI).
¡Felicitaciones! Ha instalado con éxito OpenLiteSpeed, MariaDB y PHP en Ubuntu 20.04/18.04. Puede ver que OpenLiteSpeed usa PHP7.3 por defecto. Para cambiar la versión de PHP, debe usar el panel de administración.
Paso 5:configurar el panel de administración
Establezca un nombre de usuario y una contraseña para el panel de administración.
sudo /usr/local/lsws/admin/misc/admpass.sh
Luego puede acceder al panel de administración en https://server-ip-address:7080/login.php
. De forma predeterminada, utiliza un certificado TLS autofirmado, por lo que debe agregar una excepción de seguridad en su navegador web.
- En Firefox, haga clic en
Advanced
y haga clic en “Accept the risk and Continue
“ - En Google Chrome, haga clic en Continuar con
your-server-ip(unsafe)
.
Cambiar a PHP8.0 en el Panel de administración
Para hacer que el host virtual predeterminado use PHP8.0, primero debemos habilitar PHP8.0 a nivel del servidor. Vaya a Server Configuration
-> External App
y haga clic en +
botón para agregar una nueva aplicación externa.
Seleccione LiteSpeed SAPI App
como tipo y haga clic en Next
botón.
Ingrese la siguiente información:
- Nombre :
lsphp8.0
- Dirección :
uds://tmp/lshttpd/lsphp80.sock
- Conexiones máximas :
10
- Medio ambiente :PHP_LSAPI_CHILDREN=10
LSAPI_AVOID_FORK=200M - Tiempo de espera de solicitud inicial (segundos) :
60
- Tiempo de espera de reintento (segundos) :
0
- Conexión persistente :
Yes
- Búfer de respuesta :
No
- Comando :
lsphp80/bin/lsphp
- Retraso :
100
- Instancias :
1
- Prioridad :
0
- Límite flexible de memoria (bytes) :2047M
- Límite máximo de memoria (bytes) :2047M
- Límite suave del proceso :1400
- Límite estricto del proceso :1500
Guarde la configuración. Luego vaya a Virtual Hosts
-> Example
-> Script Handler
pestaña y haga clic en +
botón para agregar un nuevo controlador de script.
Ingrese la siguiente información:
- Sufijos :
php
- Tipo de controlador :
LiteSpeed SAPI
- Nombre del controlador :
lsphp8.0
Guarde la configuración. Luego haga clic en Reinicio correcto en la esquina superior izquierda para que los cambios surtan efecto. Ahora ingrese server-ip-address/phpinfo.php
en la barra de direcciones del navegador para probar PHP con el servidor web OpenLiteSpeed. Debería ver que el host virtual predeterminado ahora usa PHP8.0.
Notas
Después de usar OpenLiteSpeed por un tiempo, traté de volver a Nginx solo para probar. Es extraño que algunos de los módulos de PHP ya no estén habilitados. No está claro si es por OpenLiteSpeed. Tuve que editar /etc/php/7.4/cli/php.ini
y /etc/php/7.4/fpm/php.ini
para habilitar los módulos que faltan, incluido mysqlnd
, mysqli
, mbstring
, gd
, json
, etc.
En una instalación normal de la pila LEMP, no tengo que editar php.ini
para habilitar los módulos de PHP, pero en esta situación, tuve que editar este archivo. Una manera fácil de habilitar todos los módulos necesarios es ejecutar los siguientes dos comandos:
cat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/fpm/php.ini cat /etc/php/7.4/mods-available/* | sudo tee -a /etc/php/7.4/cli/php.ini
Cierre
Espero que este tutorial te haya ayudado a instalar la pila LOMP en Ubuntu 20.04/18.04 LTS . Como siempre, si esta publicación le resultó útil, suscríbase a nuestro boletín gratuito para obtener más consejos y trucos. Cuídate 🙂