Instalación de LEMP (NGINX, PHP, MySQL con motor MariadB y PhPMyadmin) en Arch Linux

Instalación de LEMP (NGINX, PHP, MySQL con motor MariadB y PhPMyadmin) en Arch Linux

Debido a su modelo de liberación continua que abarca el software de edad de corte Arch Linux no fue diseñado y desarrollado para ejecutar como servidor para proporcionar servicios de red confiables porque requiere tiempo adicional para mantenimiento, actualizaciones de constantes y configuraciones de archivos sensibles.

Instale Lemp en Arch-Linux

Pero, aún así, porque Arch Linux Viene con una instalación de núcleo de CD con un software mínimo preinstalado, puede representar un punto de inicio de base sólido para instalar la mayoría de los servicios de red populares en este día, incluida la inclusión de Lemplo o LÁMPARA, Apache Web Server, Nginx, PHP, bases de datos SQL, Samba, servidores FTP, BIND y otros, muchos de ellos se proporcionan desde Arco Repositorios oficiales de Linux y otros de Aur.

Este tutorial guiará a través de la instalación y configuración Lemplo Stack (Nginx, PHP, MySQL con el motor Mariadb y PhpMyadmin) de un SSH de uso remoto, que puede proporcionar una base sólida para crear aplicaciones de servidores web.

Requisitos

Guía de instalación de Arch Linux anterior, excepto la última parte en redes con DHCP.

Paso 1: Asigne IP estático en la interfaz de red

1. Después de mínimo Arch Linux Instalación central Reinicio de su servidor, inicie sesión con una cuenta raíz o una cuenta administrativa de sudo equivalente e identifique los nombres de los dispositivos de su sistema con NIC utilizando enlace dominio.

# enlace IP
Verifique los nombres de las interfaces de red

2. Para asignar configuraciones de red estática, vamos a usar Netctl Paquete para administrar conexiones de red. Después de haber identificado con éxito su Interfaces de red nombrar copia ethernet-static plantilla de archivo a netctl ruta del sistema y cambie su nombre a un esquema de nomenclatura descriptivo (intente usar "estático"Cadena combinada con el nombre de Nic), emitiendo el siguiente comando.

# cp/etc/netctl/ejemplos/ethenet-static/etc/netctl/static.ENS33

3. El siguiente paso es editar este nuevo archivo de plantilla cambiando las directivas de archivo y proporcionando su configuración de red (interfaz, IP/netmask, puerta de enlace, transmisión, DNS) como en el siguiente extracto.

# nano/etc/netctl/estática.ENS33
Agregar detalles de red
Descripción = 'Una conexión Ethernet estática básica para la interfaz ENS33' = ENS33 Connection = Ethernet IP = Static Dirección = ('192.168.1.33/24 ') Gateway = "192.168.1.1 "Brodcast =" 192.168.1.255 "DNS = ('192.168.1.1 "8.8.8.8 ')

4. El siguiente paso es iniciar su conexión de red a través de netctl herramienta del sistema y verificar la conectividad de su sistema emitiendo los siguientes comandos.

# netctl inicio estático.ENS33 # netctl status static.ENS33
Iniciar servicio de red

5. Si obtiene un estado de salida verde activo, ha configurado con éxito su Interfaz de red y es hora de habilitarlo automáticamente en servicios de todo el sistema. También pruebe su red ejecutando un silbido comandar contra un nombre de dominio y también instalar toallas de red Paquete (la característica más conocida de este paquete es el comando ifconfig que los desarrolladores de Arch consideraron un poco en desuso y lo reemplazaron con iproute2).

Habilitar las configuraciones de System Wide Nic
# netctl habilitar estático.ENS33
Instalar paquete de herramientas de red
# PACMAN -S Net -Tools

6. Ahora puedes correr ifconfig ordenar verificar su Interfaces de red configuración y verificar si todo se muestra correctamente, entonces reiniciar su sistema para asegurarse de que todo esté en su lugar y configurado correctamente.

# Ping Tecmint.comunicarse
Verificar la conectividad de red

Paso 2: Instale el software LEMP

Como señaló en este artículo Introducción Lemplo significa Linux+Nginx+Php/PhpMyadmin+MySQL/MariadB, que es una de las plataformas de aplicaciones web más ampliamente extendidas hoy después LÁMPARA (la misma pila con Apache en la ecuación).

7. Antes de instalar realmente Lemplo pila necesitamos actualizar el sistema y luego obtener el control remoto para Arch Linux servidor. Como probablemente sabes Abierro es el candidato principal para este trabajo, así que continúe e instálelo, inicie SSH Daemon y habilite el sistema de TI de par en par.

$ sudo Pacman -Syu $ sudo Pacman -s openssh
Instalar el servicio SSH abierto
$ sudo systemctl inicio sshd $ sudo systemctl sshd $ sudo systemctl habilita sshd
Comenzar el servicio SSH Open SSH

Ahora es el momento de proceder con Lemplo instalación. Porque este tutorial está destinado a ser como una guía integral, dividiré Lemplo Instalación de apilar en piezas pequeñas, paso a paso.

8. Primera instalación Servidor web nginx, Luego comience y verifique su estado emitiendo los siguientes comandos.

$ sudo Pacman -S nginx $ sudo systemctl inicio nginx $ sudo systemctl status nginx
Instale el servidor web Nginx Iniciar servidor web Nginx

9. El próximo servicio a instalar es Mysql base de datos. Emitir el siguiente comando para instalar el servidor de base de datos MySQL y elegir Mariada motor, luego inicie y verifique el estado de demonio.

$ sudo Pacman -S mysql $ sudo systemctl iniciar mysqld $ sudo systemctl status mysqld
Instale la base de datos MySQL Iniciar base de datos MySQL

10. El siguiente paso es proporcionar un entorno altamente seguro para las bases de datos MySQL proporcionando una contraseña para la cuenta raíz de MySQL, eliminar la cuenta de usuario anónimo, eliminar la base de datos de prueba y las cuentas raíz a las que se puede acceder desde el local Hosthost. Ejecute el siguiente comando para mejorar la seguridad de MySQL, presione [Ingresar] Para la contraseña actual de la cuenta raíz, luego responda a todas las preguntas (también configure su contraseña de cuenta raíz).

$ sudo mysql_secure_installation
Instalación asegurada de MySQL Configurar la configuración de MySQL

Nota: De ninguna manera, no confunda la cuenta raíz de MySQL con la cuenta raíz del sistema Linux, son dos cosas diferentes, no son tan diferentes, pero se ejecutan en diferentes niveles.

Para verificar el inicio de sesión de seguridad de MySQL en la base de datos utilizando mysql -u raíz -p Sintaxis del comando, proporcione su contraseña de root y luego deje la base de datos con salida; dominio.

# mysql -u root -p
Conectarse a la base de datos MySQL

11. Ahora es el momento de instalar Php lenguaje de secuencias de comandos del lado del servidor para poder desarrollar y ejecutar aplicaciones web dinámicas complejas, no solo servir HTML/CSS código.

Porque estamos usando Nginx Como servidor web necesitamos instalar Php-FPM módulo respaldado para comunicarse a través de Puerta de entrada común rápida y cambiar el contenido dinámico generado por los scripts de PHP.

Emitir la siguiente línea de comando para instalar Php-FPM servicio, luego inicie el demonio y verifique el estado.

$ sudo PACMAN -S PHP PHP-FPM $ sudo SystemCTL Inicio PHP-FPM $ SUDO SystemCTL Estado PHP-FPM
Instalar PHP y PHP-FPM Iniciar servicio PHP-FPM

Para enumerar todo disponible Módulo PHP emitir los siguientes comandos.

$ sudo Pacman -S PHP [TAB] $ sudo Pacman -SS | Grep PHP
Enumere todos los módulos PHP Verificar todos los módulos de PHP

12. Uno de los últimos pasos es instalar Interfaz web phpmyadmin para la base de datos mysql. Emitir el siguiente comando para instalar PhPMyAdmin junto con su módulo PHP necesario y luego crear un enlace simbólico para la ruta del sistema PhPMyaAdmin a la ruta de raíz predeterminada de NGINX.

$ PACMAN -S PHPMYADMIN PHP -MCRYPT $ sudo ln -s/usr/share/webapps/phpmyadmin/usr/share/nginx/html
Instalar phpmyadmin

13. Luego configurar php.ini Archivo para incluir las extensiones necesarias necesarias por la aplicación PhPMyAdmin.

$ sudo nano/etc/php/php.ini

Localizar con [Ctrl+W] claves e incomment (eliminar ; en la línea que comienza) las siguientes líneas.

extensión = mySqli.entonces extensión = mysql.Entonces la extensión = MCRYP.Entonces mysqli.tampable_local_infile = on

En el mismo archivo localizar y editar Open_BaseDir Directiva para parecerse a los siguientes directorios incluidos.

Open_Basedir =/srv/http/:/home/:/tmp/:/usr/share/pera/:/usr/share/webapps/:/etc/webapps/
Configurar PHP.Extensiones ini Habilitar Extensiones MySQL PHP

14. El siguiente paso es habilitar PHP-FPM Fastcgi en la directiva localhost nginx. Emitir el siguiente comando para hacer una copia de seguridad nginx.confusión Configuración del archivo del servidor web y luego reemplácelo con el siguiente contenido.

$ sudo mv/etc/nginx/nginx.conf/etc/nginx/nginx.confusión.bak $ sudo nano/etc/nginx/nginx.confusión

Agregue todo el contenido siguiente en Nginx.confusión.

#User html; trabajador_procesos 2; #Error_log Logs/Error.registro; #Error_log Logs/Error.aviso de registro; #Error_log Logs/Error.información de registro; #pid logs/nginx.pid; eventos trabajador_connections 1024;  http incluir mime.tipos; APLICACIÓN DE LA APLICACIÓN/OCTETA DEFORT_TYPE; SendFile On; #TCP_NOPUSH ON; #keepalive_timeout 0; KeepAlive_TimeOut 65; gzip on; servidor escuchar 80; server_name localhost; root/usr/share/nginx/html; Charset KOI8-R; ubicación / índice índice.índice de PHP.índice HTML.htm; autoindex on; autoindex_exact_size off; autoindex_localtime on;  ubicación /phpmyadmin reescritura ^ /* /phpmyadmin último;  Error_page 404 /404.html; # Redirigir las páginas de error del servidor a la página estática /50x.html error_page 500 502 503 504 /50x.html; Ubicación = /50x.html root/usr/share/nginx/html;  ubicación ~ \ \.PHP $ #FASTCGI_PASS 127.0.0.1: 9000; (Dependiendo de su configuración de socket Php-FPM) fastcgi_pass unix:/run/php-fpm/php-fpm.calcetín; Índice FastCGI_Index.php; incluir fastcgi.conf;  ubicación ~ /\.ht negar todo; 
Habilitar PHP-FPM FastCGI

15. Después de que se realizaron todas las configuraciones de archivos, todo lo que necesita hacer es reiniciar Nginx y Php-FPM servicios y apunte su navegador a http: // localhost/phpmyadmin URL del nodo local o http: // arch_ip/phpmyadmin formar otra computadora.

$ sudo SystemCTL reiniciar PHP-FPM $ sudo SystemCTL reiniciar nginx
Acceder al servidor web Nginx Phpmyadmin Iniciar sesión Phpmyadmin tablero

dieciséis. Si todo se ejecuta según lo previsto, el paso final es habilitar Lemplo Sistema en todo el sistema con los siguientes comandos.

$ sudo SystemCTL Habilitar PHP-FPM $ sudo SystemCtl Enable Nginx $ sudo SystemCtl Enable MySQLD
Habilitar el sistema LEMP de ancho

Felicidades! Ha instalado y configurado Lemplo en Arch Linux Y, ahora, tiene una interfaz dinámica completa para comenzar y desarrollar aplicaciones web.

A pesar de Arch Linux no es el sistema más mejor adecuado para funcionar en los servidores de producción debido a su modelo de liberación de rodaje orientado a la comunidad, puede ser una fuente muy rápida y confiable para pequeños entornos de producción no críticos.