Cómo Instalar Caddy Web Server con Php-Fpm En Ubuntu 16.04

by Luigi Nori Date: 30-01-2020 caddy https apache nginx letsencrypt ssl fpm php


El Caddy o Caddy web server es un servidor web de código abierto habilitado para HTTP/2 escrito en Go. Caddy puede funcionar en varios sistemas, incluyendo los que funcionan con Linux, Windows, Mac OS, Android, y sistemas operativos BSD. Caddy tiene muchas características y puede instalarse como servidor web y como proxy inverso para su aplicación. Las características más notables del servidor web de Caddy son el HTTPS automático activado por defecto sin configuración extra.

En este tutorial, os mostraré paso a paso cómo instalar y configurar el servidor web del Caddy con PHP-FPM 7.x en Ubuntu 16.04. Instalaremos Caddy en el entorno local, y luego configuraremos PHP-FPM para aplicaciones basadas en PHP.
 

Lo que haremos

  1. Instalar Caddy web server
  2. Configurar Caddy web server
  3. Ejecutar Caddy como un servicio en Systemd en Ubuntu 16.04
  4. Instalar PHP y PHP-FPM 7.0
  5. Configurar Caddy web server con PHP-FPM
  6. Testear
     

Instalar Caddy web server

En este paso, instalaremos el servidor web del Caddy usando el script de instalación. El script descargará automáticamente el archivo binario y lo extraerá al directorio bin.

Descarga el script de instalación y hazlo ejecutable.

wget https://getcaddy.com -O getcaddy
chmod +x getcaddy

Ahora ejecuta el script de instalación con sudo.

sudo ./getcaddy personal http.ipfilter,http.ratelimit

Nota:

  • getcaddy = script de instalación del caddy.
  • personal = licencia para nuestra instalación.
  • http.ipfileter ... = incluyen la instalación de plugins para el caddy.

Espera la instalación del servidor web del caddy y obtendrás el resultado. El servidor web del Caddy ha sido instalado en Ubuntu 16.04.
 

Configuración básica del servidor web Caddy

En este paso, configuraremos el servidor web Caddy. Crearemos un nuevo usuario llamado 'caddy', crearemos un nuevo directorio para el archivo de configuración de caddy, un nuevo directorio para los archivos de registro de caddy y un nuevo directorio para el directorio raíz web de Caddy.

Crear un nuevo usuario 'caddy' usando la opción '/bin/false' como se muestra abajo.

useradd -M -s /bin/false caddy

Ahora ejecuta el siguiente comando mkdir para crear el directorio de caddy.

mkdir -p /etc/caddy
mkdir -p /var/log/caddy
mkdir -p /var/www/html

Y cambiar la ownership(propiedad) al usuario del caddy.

chown -R caddy:root /etc/caddy /var/log/caddy

A continuación, crearemos un nuevo archivo de configuración del caddy llamado Caddyfile . Ve al directorio /etc/caddy y crea la configuración con el comando vim .

cd /etc/caddy/
vim Caddyfile

Pega la configuración básica de caddy allí.

http://hakase-labs.co {
root /var/www/html
log /var/log/caddy/hakase-labs.log
tls off
gzip
}

Salva y sale.

Nota:

  • tls off = estamos ejecutando el caddy en el servidor local, si estás en el servidor en vivo, habilita la opción.

La configuración básica del servidor web del Caddy ha sido completada.
 

Ejecutar Caddy como un servicio en Systemd en Ubuntu 16.04

En este paso, ejecutaremos el servidor web del caddy como servicio en el sistema systemd y crearemos el archivo index.html para nuestro servidor web del caddy.

Crea un nuevo archivo de servicio llamado caddy.service usando VIM..

vim /etc/systemd/system/caddy.service

Pega la siguiente configuración allí.

[Unit]
Description=Caddy HTTP/2 web server
[Service]
User=caddy
Group=caddy
Environment=CADDYPATH=/etc/caddy
ExecStart=/usr/local/bin/caddy -agree=true -log=/var/log/caddy/caddy.log -conf=/etc/caddy/Caddyfile -root=/dev/null
ExecReload=/bin/kill -USR1 $MAINPID
LimitNOFILE=1048576
LimitNPROC=64
[Install]
WantedBy=multi-user.target

Guarda y sale

Ahora recarga el programa de systemd y empieza el servicio de caddy usando el comando systemctl como se muestra a continuación.

systemctl daemon-reload
systemctl start caddy

Habilitarlo para que se lance siempre en el arranque del sistema.

systemctl enable caddy

El servidor web del Caddy está funcionando como un servicio en Ubuntu 16.04. A continuación, crearemos un nuevo archivo index.html bajo el directorio raíz de la web /var/www/html .

Ve a ese directorio y crea el archivo index.html usando los siguientes comandos.

cd /var/www/html
echo '<h1><center>Caddy web server</center></h1>' > index.html

Ahora cambia el dueño del archivo al usuario y grupo de "caddy".

chown -R caddy:caddy /var/www/html

Se ha creado el archivo index.html. Abre el navegador web y escribe la dirección del nombre de dominio que has escrito en la configuración de Caddyfile , el mío es:

http://ma-no.org/

Y obtendrás así la página de índice que hemos creado.
 

Instalar PHP y PHP-FPM 7.0

En este paso, instalaremos los paquetes PHP-FPM del repositorio de Ubuntu.

Ejecuta el comando apt abajo.

sudo apt install -y php7.0-fpm php7.0-cli curl

Después de que la instalación se complete, configuraremos el archivo de configuración para PHP-FPM.

Ve al directorio /etc/php/7.0/fpm y edita el archivo de configuración de pool www.conf usando vim.

cd /etc/php/7.0/fpm
vim pool.d/www.conf

Descomenta estas líneas abajo.

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

Guarda y sale.

Ahora añade el usuario caddy al grupo www-data .

usermod -a -G www-data caddy

Inicia el servicio PHP-FPM y habilítalo para que se lance cada vez que arranque el boot del sistema.

systemctl start php7.0-fpm
systemctl enable php7.0-fpm

La instalación y configuración de PHP-FPM para la instalación del servidor web de nuestro Caddy ha sido completada.

Revisa el proceso del archivo de sockets PHP-FPM usando el comando netstat a continuación.

netstat -pl | grep php


Configurar el servidor web de Caddy con PHP-FPM

Después de la instalación y configuración de PHP-FPM, añadiremos el soporte de PHP-FPM al servidor web Caddy.

Ve al directorio de configuración /etc/caddy y edita el archivo de configuración Caddyfile usando vim.

cd /etc/caddy
vim Caddyfile

Ahora agrega la siguiente configuración PHP-FPM para el caddy bajo el paréntesis de tu nombre de dominio como se indica a continuación.

http://hakase-labs.co {
root /var/www/html
log /var/log/caddy/hakase-labs.log
errors /var/log/caddy/errors.log
tls off
gzip
# PHP-FPM Configuration for Caddy
fastcgi / /run/php/php7.0-fpm.sock php {
ext .php
split .php
index index.php
}
}

Guarda y sale.

Reinicia el servidor web caddy y el servicio PHP-FPM..

systemctl restart caddy
systemctl restart php7.0-fpm

La configuración del servidor web Caddy con PHP-FPM ha sido completada.
 

Prueba del servidor

Ve al directorio raíz de la web /var/ww/html y crea el archivo phpinfo info.php .

cd /var/www/html
echo '<?php phpinfo(); ?>' > info.php

Abre tu navegador y escribe la instalación de la URL del servidor web Caddy como se indica a continuación.

http://ma-no.org/info.php

Y obtendrás la página de información de PHP. La instalación para el servidor web Caddy con PHP-FPM en Ubuntu 16.04 se ha completado con éxito.
 

Referencias

 
by Luigi Nori Date: 30-01-2020 caddy https apache nginx letsencrypt ssl fpm php visitas : 541  
 
Luigi Nori

Luigi Nori

Lavora in Internet dal 1994 (praticamente una mummia), specializzato in tecnologie Web fa felici i suoi clienti smanettando con applicazioni su larga scala e ad alta disponibilità, frameworks php e js, disegno web, intercambio dati, sicurezza, e-commerce, amministrazione database e server, hacking etico. Convive felicemente con @salvietta150x40, nel (poco) tempo libero cerca di addomesticare un piccolo nano selvaggio appassionato di astri.

 
 
 

Artículos relacionados