Compilación e instalación de Nginx 1.20.1 en macOS

Para realizar una instalación personalizada de Nginx en macOS partiendo del código fuante, es necesario preparar el entorno con las dependencias adecuadas de OpenSSL y PCRE. A continuación, se detalla el procedimiento técnico para lograr una compilación exitosa.

1. Obtención de los paquetes fuente

Primero, definimos un directorio de trabajo para descargar y extraer los archivos necesarios. Utilizaremos las versiones específicas que garantizan compatibilidad, especialmente PCRE 8.45 (evitando PCRE2 para prevenir errores de cabeceras durante la compilación).

# Directorio de trabajo para fuentes
cd /usr/local/src

# Descarga de Nginx y sus dependencias principales
curl -O http://nginx.org/download/nginx-1.20.1.tar.gz
curl -L -O https://www.openssl.org/source/openssl-3.0.0.tar.gz
curl -L -O https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz

# Extracción de los archivos comprimidos
tar -zxvf nginx-1.20.1.tar.gz
tar -zxvf openssl-3.0.0.tar.gz
tar -zxvf pcre-8.45.tar.gz

2. Preparación del directorio de destino

Es recomendable organizar la instalación en /usr/local, utilizando enlaces simbólicos para facilitar futuras actualizaciones de versión.

cd /usr/local
sudo mkdir nginx-1.20.1
sudo ln -sf nginx-1.20.1 nginx

# Ajuste de permisos para permitir la instalación sin privilegios de root constantes
sudo chown -R $USER:staff nginx-1.20.1 nginx

3. Configuración del proceso de compilación

En lugar de ejecutar el comando directamente en la terminal, crearemos un script de configuración llamado setup_nginx.sh dentro de la carpeta de Nginx para mantener un registro de los parámetros utilizados.

cd /usr/local/src/nginx-1.20.1

# Creación del script de configuración
cat <<eof> setup_nginx.sh
./configure \\
--with-debug \\
--prefix=/usr/local/nginx \\
--with-openssl=/usr/local/src/openssl-3.0.0 \\
--with-pcre=/usr/local/src/pcre-8.45
EOF

# Ejecución del script
bash setup_nginx.sh
</eof>

Al finalizar la configuración, el sistema mostrará un resumen detallando las rutas de los binarios, archivos de configuración y logs, confirmando que las librerías PCRE y OpenSSL han sido detectadas correctamente.

4. Compilación e instalación

Una vez generado el Makefile, procedemos a compilar el código fuente y transferir los binarios al prefijo configurado anteriormente.

make
make install

Para verificar que los archivos se han distribuido correctamente en el sistema, podemos listar el contenido del directorio de instalación:

ls -la /usr/local/nginx/
# Debería mostrar los directorios: conf, html, logs, sbin

5. Configuración del entorno y ejecución

Para invocar el comando nginx desde cualquier ubicación de la terminal, añadimos la ruta del binario a nuestro perfil de shell (.zshrc o .bashrc, dependiendo de la configuración del sistema).

# Añadir al archivo de configuración de la shell
echo 'export NGINX_HOME=/usr/local/nginx' >> ~/.zshrc
echo 'export PATH=$PATH:$NGINX_HOME/sbin' >> ~/.zshrc
source ~/.zshrc

Finalmente, iniciamos el servicio y realizamos una petición de prueba para confirmar que el servidor web está respondiendo:

# Iniciar el proceso
nginx

# Verificar la respuesta del servidor
curl -I localhost

Si la instalación fue exitosa, el servidor devolverá una cabecera HTTP 200 OK y el contanido HTML predeterminado de bienvenida de Nginx.

Etiquetas: Nginx macos OpenSSL PCRE compilación

Publicado el 10-25 06:02