Instalación de la herramienta Php Server Monitor con LEMP o pila de lámparas en Arch Linux

Instalación de la herramienta Php Server Monitor con LEMP o pila de lámparas en Arch Linux

Monitor de servidor PHP es una herramienta de monitoreo de frontends web de código abierto escrita en PHP, que puede verificar si sus servidores (IP, dominios) o servicios están en funcionamiento y pueden enviarle notificaciones a través de servicios de correo o SMS si se produjo un problema en un servicio o puerto monitoreado. Comprueba los sitios web utilizando el código de estado HTTP, puede mostrar gráficos de antecedentes de tiempo de actividad y latencia y puede usar dos niveles de autenticación (administrador y usuario regular).

Instale el monitor del servidor PHP en Arch Linux

Este tutorial le presenta una forma de instalar Monitor de servidor PHP en un entorno de servidor de Arch Linux utilizando si apache como servidor o Nginx servidor web, por lo tanto, puede elegir el proceso de instalación que mejor le convenga.

Requisitos del monitor del servidor PHP

Como requisitos generales para instalar y configurar el monitor de servidor PHP para cualquier otra plataforma de Linux, su servidor necesita los siguientes paquetes instalados.

  1. Php 5.3.7+
  2. Paquetes PHP: Curl, MySQL
  3. Base de datos mysql
  4. Servidores web nginx o apache

Requisitos del sistema

Para instalar el monitor de servidor PHP con NGINX, use los siguientes tutoriales como guías para configurar la pila Lemp y los hosts virtuales en Arch.

  1. Instale LEMP (Linux, Nginx, MySQL, PHP) en Arch Linux
  2. Crear hosts virtuales Nginx en Arch Linux

Para instalar el monitor del servidor PHP con Apache, use la siguiente guía para configurar la pila de lámparas en Arch Linux.

  1. Instalar lámpara (Linux, Apache, MySQL, PHP) en Arch Linux

Paso 1: Configurar Nginx/Apache Webserver

1. Antes de comenzar, si su configuración usa alojamiento virtual, debe asegurar que tenga una entrada DNS válida que apunte a su dominio o use local Hospedadores Archivo en caso de que no tenga un servidor DNS. Este tutorial utiliza alojamiento virtual con ambos servidores web (Nginx y apache) configurado con un dominio local falso - phpsrvmon.lan - a través de /etc/huéspedes archivo.

Crear archivos de configuración de host virtual nginx

2. Para agregar un nuevo host virtual NGINX, cree un nuevo archivo de configuración en /etc/nginx/sitios disponible/ con phpsrvmon.confusión Nombre y use la siguiente plantilla como ejemplo de configuración.

$ sudo nano/etc/nginx/sites disponible/phpsrvmon.confusión

Agregue el siguiente código al phpsrvmon.confusión archivo.

servidor escuchar 80; server_name phpsrvmon.Lan; access_log/var/log/nginx/phpsrvmon.accidente de lan.registro; ERROR_LOG/VAR/LOG/NGINX/PHPSRVMON.error.registro; raíz/srv/www/phpsrvmon; ubicación / índice índice.índice de PHP.índice HTML.htm; autoindex on;  ubicación ~ \ \.php $ fastcgi_pass unix:/run/php-fpm/php-fpm.calcetín; Índice FastCGI_Index.php; incluir fastcgi.conf; 
Crear nginx host virtual

3. Si desea acceder a PHP Sever Monitor a través del protocolo HTTP seguro, cree su archivo de configuración equivalente SSL.

$ sudo nano/etc/nginx/sites disponible/phpsrvmon-ssl.confusión

Agregue el siguiente código al phpsrvmon-ssl.confusión archivo.

servidor escuchar 443 ssl; server_name phpsrvmon.Lan; raíz/srv/www/phpsrvmon; ssl_certificate/etc/nginx/ssl/nginx.CRT; ssl_certificate_key/etc/nginx/ssl/nginx.llave; ssl_session_cache compartido: ssl: 1m; ssl_session_timeout 5m; SSL_CIPHERS ALTO:!Anull:!MD5; ssl_prefer_server_ciphers on; access_log/var/log/nginx/phpsrvmon.lan-ssl_access.registro; ERROR_LOG/VAR/LOG/NGINX/PHPSRVMON.lan-ssl_error.registro; ubicación / índice índice.índice de PHP.índice HTML.htm; autoindex on;  ubicación ~ \ \.php $ fastcgi_pass unix:/run/php-fpm/php-fpm.calcetín; Índice FastCGI_Index.php; incluir fastcgi.conf; 
Crear nginx sll host virtual

4. Después de editar archivos conf Nginx Conf, cree la ruta de la raíz del documento, en caso de que la haya cambiado como aquí a /srv/www/phpsrvmon/, activar ambos hosts virtuales usando N2ensita utilidad y reiniciar Nginx para reflejar los cambios.

$ sudo mkdir -p/srv/www/phpsrvmon/$ sudo n2ensite phpsrvmon $ sudo n2ensite phpsrvmon -ssl $ sudo systemctl reiniciar nginx

Si necesita un nuevo certificado SSL para su host virtual, genere uno usando nginx_gen_ssl comandar con su nombre de dominio y modificar phpsrvmon-ssl.confusión respectivamente.

Crear archivos de configuración de host virtual Apache

5. Si usa Apache como servidor web, cree un nuevo archivo de configuración de host virtual en /etc/httpd/conf/sites disponible/ con phpsrvmon.confusión nombre y use las siguientes definiciones de archivo como plantilla.

$ sudo nano/etc/httpd/conf/sites disponible/phpsrvmon.confusión

Agregue el siguiente código al phpsrvmon.confusión archivo.

 Servidor de documentroot "/srv/www/phpsrvmon" phpsrvmon.LAN ServerAdmin [Correo electrónico protegido] ErrorLog "/var/log/httpd/phpsrvmon-error_log" transferLog "/var/log/httpd/phpsrvmon-access_log" Opciones +índices DesignOverride todos los pedidos, permiso de todos los requisitos de todos los que se les otorgó  
Crear apache host virtual

6. Si también necesita un monitor de servidor PHP Access en el protocolo HTTPS, cree un nuevo archivo de configuración SSL de host virtual con las siguientes declaraciones.

$ sudo nano/etc/httpd/conf/sites disponible/phpsrvmon-ssl.confusión

Agregue el siguiente código a phpsrvmon-ssl.confusión archivo.

 Servername phpsrvmon.LAN DocumentRoot "/srv/www/phpsrvmon" serverAdmin [correo electrónico protegido] ErrorLog "/var/log/httpd/phpsrvmon.lan-error_log "transferlog"/var/log/httpd/phpsrvmon.lan-access_log "SSLEngine en sslCertificateFile"/etc/httpd/conf/ssl/phpsrvmon.lan.CRT "SSLCertificAtekeyFile"/etc/httpd/conf/ssl/phpsrvmon.lan.Clave "SSLOPTIONS +STDENVVARS BROWSERMATCH" MSIE [2-5] "\ Nokeepalive SSL-UNCLEAN-SHUTDOWN \ REDGRADE-1.0 Fuerza-Respuesta-1.0 customLog "/var/log/httpd/ssl_request_log" \ " %t %h %ssl_protocol x %ssl_cipher x \" %r \ "" %b"" Opciones +índices DesignOverride todos los pedidos Deny, permita de todos los requisitos Todo concedido  
Crear apache ssl host virtual

7. Utilizando el mismo procedimiento que para NGINX, cree el directorio raíz de documento, en caso de que la ruta de los archivos web ha cambiado, active los hosts virtuales de Apache usando A2ensita Comandar y reiniciar Daemon para aplicar cambios.

$ sudo mkdir -p/srv/www/phpsrvmon/$ sudo a2ensite phpsrvmon $ sudo a2ensite phpsrvmon -ssl $ sudo systemctl reiniciar httpd

Para generar un nuevo certificado SSL y clave para este uso de host virtual apache_gen_ssl utilidad, agregar su nombre de dominio en el nombre del certificado y modificar /etc/httpd/conf/sites-disponible/phpsrvmon-ssl.confusión Archivo, reemplazo de certificado SSL anterior y ruta clave y nombres con otros nuevos.

Paso 2: Editar configuraciones de PHP

8. Para evitar algunos errores de instalación, ese monitor de servidor PHP lanzará cuando verifique los requisitos del sistema abiertos php.ini archivo y hacer los siguientes ajustes.

$ sudo nano/etc/php/php.ini

Si se ha cambiado la ruta de la raíz del documento Nginx/Apache (el valor predeterminado es /srv/http/) usar [Ctrl+W] localizar Open_BaseDir Declaración y agregar la nueva ruta al prefijo con un colon "" : "" - En este caso, el nuevo camino es /srv/www/ - parecer en el ejemplo a continuación.

Open_Basedir =/srv/http/:/home/:/tmp/:/usr/share/pera/:/usr/share/webapps/:/etc/webapps/:/srv/www/
Habilitar módulos PHP

Buscar y habilitar las extensiones PDO PDO, MySQLi y Curl desencadenándolas (eliminar las semicolon de su frente).

extensión = curl.Entonces la extensión = mysqli.Entonces Extension = PDO_MYSQL.entonces
Habilitar extensiones de PHP

Localice la zona horaria y establezca su hora local como usando esta página.

fecha.TimeZone = Continent/City
Establecer zona horaria en PHP

9. Después de que se realicen todos los cambios, reinicie sus servicios para aplicar cambios.

$ sudo SystemCTL reiniciar PHP-FPM $ sudo SystemCTL reiniciar nginx $ sudo systemctl reiniciar httpd

Paso 3: Crear base de datos MySQL de monitor de servidor PHP

10. Para crear la base de datos necesaria para Php Server Monitor para almacenar información, inicie sesión en la base de datos MySQL/Mariadb y cree una nueva base de datos utilizando los siguientes comandos (reemplazar la base de datos, el usuario y la contraseña con sus credenciales preferidas).

mysql -u root -p mariadb> crear base de datos phpsrvmon