Cómo instalar Nginx, MariadB y PHP (FEMP) en FreeBSD

Cómo instalar Nginx, MariadB y PHP (FEMP) en FreeBSD

Este tutorial lo guiará sobre cómo instalar y configurar FBEMP en FreeBSD 11.X último lanzamiento. FBEMP es un acrónimo que describe la siguiente colección de software:

FreeBSD 11.1 Distribución similar a UNIX, servidor web NGINX, Sistema de gestión de bases de datos RELACIONALES DE MARIADB (una bifurcación comunitaria de MySQL) y un lenguaje de programación dinámica PHP que se ejecuta en el lado del servidor.

Requisitos

  1. Instalación de FreeBSD 11.X
  2. 10 cosas que hacer después de la instalación de FreeBSD

Paso 1: Instale el servidor web Nginx en FreeBSD

1. El primer servicio que instalaremos para nuestro FBEMP acumular FreeBSD ¿Está el servidor web, representado por Nginx software.

Nginx El servidor web tiene más paquetes previos a la confusión disponibles en FreeBSD 11.x puertos. Para obtener una lista de Nginx binarios de Puerto Repositorios, emita los siguientes comandos en su terminal de servidor.

# ls/usr/puertos/www/| Grep Nginx # PKG Search -O Nginx 
Encuentra paquetes Nginx

2. En esta configuración en particular, instalaremos la versión del paquete principal de Nginx emitiendo el siguiente comando. El PKG La administración de paquetes le preguntará si desea continuar con la instalación del paquete NGINX. Respuesta con sí (Y en línea de comando) para iniciar el proceso de instalación.

# PKG Instalar nginx 
Instale Nginx en FreeBSD

3. Después de que se instaló el paquete de servidor web NGINX en su sistema, ejecute los siguientes comandos para habilitar el sistema de demonio en todo el sistema e iniciar el servicio en su sistema.

# sysrc nginx_enable = "sí" # servicio nginx iniciar 
Iniciar y habilitar Nginx en FreeBSD

4. A continuación, usando el stockstat comando, verificar los enchufes de red de servicio Nginx, si están vinculantes en 80/tcp puerto, emitiendo el siguiente comando. La salida del comando SockStat se encenderá a través de la utilidad GREP para reducir los resultados devueltos solo a la cadena Nginx.

# SockStat -4 | grep nginx 

5. Finalmente, abra un navegador en una computadora de escritorio en su red y visite la página web predeterminada de Nginx a través del protocolo HTTP. Escribe el FQDN de su máquina o su nombre de dominio o la dirección IP de su servidor en la URL de navegador archivada para solicitar la página web predeterminada del servidor web NGINX. El mensaje "Bienvenido a nginx!"Debe mostrarse en su navegador, como se ilustra en la siguiente captura de pantalla.

http: // yourdomain.com http: // your_server_ip http: // your_machine_fqdn 
Verifique Nginx en FreeBSD

6. El directorio de weboot predeterminado para el contenido web de Nginx en ubicado en /usr/local/www/nginx/ ruta del sistema absoluto. En esta ubicación debe crear, copiar o instalar archivos de contenido web, como .html o .php Archivos, para su sitio web.

Para cambiar esta ubicación, edite el archivo de configuración principal de Nginx y cambie la directiva raíz para reflejar su nueva ruta de raíz web.

# nano/usr/local/etc/nginx/nginx.confusión 

Aquí, busque y actualice la siguiente línea para reflejar su nueva ruta de raíz web:

root/rath/to/new/webroot; 

Paso 2: Instale PHP en FreeBSD

7. A diferencia de Apache http servidor, NGINX no tiene la capacidad de procesar de forma nativa el código PHP. A cambio, Nginx Web Server pasa solicitudes de PHP a un intérprete de PHP, como PHP-FPM Fastcgi demonio, que inspecciona y ejecuta el código. Luego se devuelve el código resultante a Nginx, que vuelve a evaluar el código al formato HTML solicitado y envía el código más al navegador web de los visitantes.

FreeBSD 11.X Los repositorios de los puertos ofrecen múltiples versiones binarias para el lenguaje de programación de PHP, como Php 5.6, Php 7.0 y Php 7.1 lanzamientos. Para mostrar todas las versiones PHP precompiladas disponibles en FreeBSD 11.X, Ejecute los siguientes comandos .

# PKG Search -O PHP # LS/USR/Ports/Lang/| Grep PHP 

8. Puede optar por instalar cualquier versión de PHP que encuentre más adecuada para la aplicación web que ejecuta en su sistema. Sin embargo, en esta guía instalaremos la última versión de PHP.

Instalar Php 7.1 Lanzamiento y algunos módulos importantes de PHP requeridos para diversas aplicaciones web, ejecute el siguiente comando.

# PKG Instalar PHP71 PHP71-MYSQLI PHP71-MCRYPT PHP71-ZLIB PHP71-GD PHP71-JSON MOD_PHP71 PHP71-MBSTRING PHP71-CURL 

9. Después de instalar paquetes PHP en su sistema, abra Php-FPM Archivo de configuración para NGINX y ajustar los valores de usuario y grupo para que coincidan con el valor en el usuario de tiempo de ejecución de NGINX, que es www. Primero, haga una copia de seguridad del archivo con el siguiente comando.

# cp/usr/local/etc/php-fpm.D/www.conf ,.respaldo 

Luego, abra el archivo y actualice las siguientes líneas presentadas en la muestra a continuación.

user = www group = www 
Configurar PHP-FPM en FreeBSD

10. Además, cree un archivo de configuración de PHP utilizado para la producción emitiendo el siguiente comando. En este archivo puede realizar cambios personalizados que se aplicarán al intérprete PHP en tiempo de ejecución.

# cp/usr/local/etc/php.ini-producción/usr/local/etc/php.ini 

Por ejemplo, cambie el fecha.zona horaria Configuración para PHP intérprete para actualizar la ubicación física de su máquina como se muestra en el siguiente ejemplo. La lista de zona horaria de PHP se puede encontrar aquí: http: // php.net/manual/en/zonas horarias.php.

# vi/usr/local/etc/php.ini 

Agregue la siguiente zona horaria (establezca la zona horaria según su país).

fecha.zona de tiempo = Europa/Londres 

También puede ajustar otras variables PHP, como el tamaño máximo del archivo del archivo cargado, que se puede aumentar modificando los valores a continuación:

upload_max_filesize = 10m post_max_size = 10m 

11. Después, ha realizado la configuración personalizada para PHP, habilitar y comenzar Php-FPM demonio para aplicar las nuevas configuraciones emitiendo los comandos a continuación.

# sysrc php_fpm_enable = sí # servicio php-fpm inicio 
Iniciar y habilitar PHP-FPM en FreeBSD

12. Por defecto, Php-FPM Daemon en FreeBSD se une a un zócalo de red local en el puerto 9000/tcp. Para mostrar Php-FPM Sockets de red Ejecutar el siguiente comando.

# SockStat -4 -6 | GREP PHP-FPM 

13. Para que el servidor web nginx pase los scripts de PHP a Fastcgi servidor de puerta de enlace, que está escuchando en 127.0.0.1: 9000 socket, abra el archivo de configuración principal de Nginx y agregue el siguiente bloque del código como se ilustra en la muestra a continuación.

# vi/usr/local/etc/nginx/nginx.confusión 

Bloque de código FastCGI para NGINX:

 Ubicación ~ \.php $ root/usr/local/www/nginx; fastcgi_pass 127.0.0.1: 9000; Índice FastCGI_Index.php; fastcgi_param script_filename $ request_fileName; incluir fastcgi_params;  
Configurar FastCGI para Nginx en FreeBSD

14. Para ver la información de PHP actual para su servidor, cree un información.php Archivo en la ruta de Weboot nginx emitiendo el siguiente comando.

# echo "" | Tee/usr/local/www/nginx/info.php 

15. Luego, pruebe y reinicie el demonio nginx para aplicar el PHP Fastcgi configuración y visite el información.php Página en un navegador.

# nginx -t # prueba el archivo de configuración Nginx para errores de sintaxis # servicio nginx reiniciar 

Reemplace la dirección IP o el nombre de dominio en los enlaces a continuación en consecuencia. La página de información de PHP debe mostrar información como se ilustra en la siguiente captura de pantalla.

http: // yourdomain.com/información.php http: // server_ip-or-fqdn/info.php 
Consulte la información de PHP en FreeBSD

Paso 3: Instale MariadB en FreeBSD

dieciséis. El último componente que falta en su Femp pila en la base de datos. Mariadb/mysql es uno de los software RDBMS de código abierto más asociado con el servidor web NGINX utilizado para implementar sitios web dinámicos.

De hecho, Mariadb/mysql es una de las bases de datos relacionales más utilizadas del mundo. Buscando Puertos FreeBSD, Puede encontrar múltiples lanzamientos de Mariadb/mysql.

En esta guía instalaremos Mariada base de datos, que es una bifurcación comunitaria de Mysql base de datos. Para buscar versiones disponibles de Mariada, emitir los siguientes comandos en la terminal.

# ls -al/usr/puertos/bases de datos/| Grep Mariadb # PKG Search Mariadb 
Encuentra paquetes de mariadb

17. Para instalar la última versión del servidor de base de datos mariadb, ejecute el siguiente comando. También debe instalar el módulo de controlador de base de datos PHP utilizado por PHP Scripts para conectarse a MySQL.

# PKG Instalar mariadb102-server php71-mysqli 

18. Después de instalar la base de datos, habilite el demonio mysql e inicie el servicio de la base de datos ejecutando los siguientes comandos.

# sysrc mysql_enable = "sí" # servicio mysql-server inicio 

19. Además, asegúrese de reiniciar Php-FPM demonio para cargar la extensión del controlador MySQL.

# Servicio PhP-FPM reiniciar
20. En el siguiente paso, seguro Mariada base de datos mediante el lanzamiento mysql_secure_installation guion. Use la muestra a continuación del script de instalación para responder las preguntas. Básicamente, di que sí (y) Para todas las preguntas que se hacen para asegurar la base de datos y escribir una contraseña segura para el usuario root de MySQL.
#/usr/local/bin/mysql_secure_installation 
Salida de script de instalación segura de MySQL
Nota: Se recomienda ejecutar todas las partes de este script para todos los servidores MariadB en uso de la producción! Lea cada paso cuidadosamente! Para iniciar sesión en mariadb para asegurarlo, necesitaremos la contraseña actual para el usuario root. Si acaba de instalar mariadb y aún no ha establecido la contraseña de root, la contraseña estará en blanco, por lo que debe presionar ENTER AQUÍ. Ingrese la contraseña actual para root (ingrese para ninguno): OK, con la contraseña utilizada correctamente, continuando ... configurar la contraseña de root garantiza que nadie pueda iniciar sesión en el usuario root de Mariadb sin la autorización adecuada. Establecer contraseña de root? [Y/n] Y Nueva contraseña: Vuelva a ingresar una nueva contraseña: Contraseña actualizada correctamente! Tablas de privilegios de recarga ... éxito! Por defecto, una instalación de MariaDB tiene un usuario anónimo, lo que permite que cualquiera inicie sesión en MariadB sin tener que tener una cuenta de usuario creada para ellos. Esto está destinado solo a las pruebas y para que la instalación se vaya un poco más suave. Debe eliminarlos antes de mudarse a un entorno de producción. Eliminar usuarios anónimos? [Y/n] Y… Éxito! Normalmente, la raíz solo se debe permitir que se conecte desde 'localhost'. Esto asegura que alguien no pueda adivinar la contraseña de root desde la red. No permitir el inicio de sesión de raíz de forma remota? [Y/n] Y… Éxito! Por defecto, MariadB viene con una base de datos llamada 'prueba' a la que cualquiera puede acceder. Esto también se pretende solo para las pruebas, y debe eliminarse antes de mudarse a un entorno de producción. Eliminar la base de datos de prueba y el acceso a ella? [Y/n] Y - Base de datos de prueba de soltar ... éxito! - Eliminar privilegios en la base de datos de prueba ... éxito! La recarga de las tablas de privilegios asegurará que todos los cambios realizados hasta ahora entrarán en vigencia de inmediato. Tablas de privilegio de recarga ahora? [Y/n] Y… Éxito! Limpiando ... todo hecho! Si ha completado todos los pasos anteriores, su instalación de MariaDB ahora debería estar segura. Gracias por usar mariadb! 

21. Para probar la conexión de la base de datos MariadB desde la consola, ejecute el siguiente comando.

# mysql -u root -p -e "Mostrar estado como 'Connections'" 

22. Para asegurar aún más a MariadB, que de manera predeterminada se escucha las conexiones de red entrantes en 0.0.0.0: 3306/tcp socket, emita el siguiente comando para obligar al servicio a unir bucleza interfaz y no permitir completamente el acceso remoto. Posteriormente, reinicie el servicio MySQL para aplicar la nueva configuración.

# sysrc mysql_args = "-bind-address = 127.0.0.1 " # Servicio MySQL-Server reiniciar 
Atar a Mariadb a la dirección de bucleza

Verifique si el hostil La vinculación se aplicó con éxito ejecutando el comando NetStat como se muestra en el siguiente ejemplo.

# netstat -an -p tcp 

Eso es todo! Ha instalado correctamente el servidor web NGINX, la base de datos relacional Mariadb y el lenguaje de programación del servidor PHP en FreeBSD. Ahora puede comenzar a crear páginas web dinámicas para servir contenido web a sus visitantes.