Devkron FastCGI

Iniciar el servicio

Iniciar el servicio en Linux con la configuración predeterminada

./dkl -fastcgi

Iniciar el servicio en Linux indicando un archivo de configuración

./dkl -fastcgi /etc/devkron/fastcgi.json

En la línea de comando anterior se especifica un archivo de configuración en una ubicación predeterminada.

Estructura del archivo fastcgi.json

De manera predeterminada, el archivo fastcgi.json se encuentra en el directorio donde están los binarios de Devkron.

{
    "controller":"fastcgi/http.dkl",
    "address":"0.0.0.0",
    "port":9090,
    "max_concurrent_requests":128,
    "connection_timeout":10000,
    "max_header_size":16384
}

Campos:

  • controller - Indica el programa Devkron que controlará las solicitudes y respuestas HTTP, este se encuentra la carpeta 'fastcgi' del directorio de binarios de Devkron.

  • address - Indica la dirección IP del equipo en donde escuchará el servicio:

    • 0.0.0.0 - Escuchar en todas las IPs disponibles
    • 127.0.0.1 - Escuchar en la loopback (local)
  • port - Puerto de escucha (predeterminado el 9090)

  • max_concurrent_requests - Máximo de conexiones concurrentes soportadas

  • connection_timeout - Tiempo de espera máximo para cerrar una conexión que no responde

  • max_header_size - Tamaño máximo de encabezado fastcgi

Ubicación de los archivos de sitios Web

De manera predeterminada, Devkron responderá con el contenido de la carpeta 'web' que se encuentra en el directorio de los binarios.

Puede crear carpetas con los nombres de host específicos para separar el contenido correspondiente a diferentes sitios Web.

Por ejemplo:

Si crea un árbol de carpetas dentro de web como el siguiente:

./web
|----figura.png
|----/host1.midominio.com
       |----figura.png

Las solicitudes:

  • cualquierotrohost.com/figura.png - devolverán el recurso 'web/figura.png'
  • host1.midominio.com/figura.png - devolverá el recurso 'web/host1.midominio.com/figura.png'

Tipos MIME

El archivo mime.dkl en la carpeta fastcgi de la instalación de Devkron contiene la manera como deberán tratarse los diferentes tipos de archivos.

Enrutamiento

El archivo routing.dkl en la carpeta fastcgi permite programar la manera como serán canalizadas las solicicitudes de recursos, incluso cuando los URI no correspondan diractamente con archivos físicos.

Ejecución de Scripts

Todos los archivos con extensión .dkl se consideran programas de Devkron y son ejecutados para producir contenido dinámico. Cualquier otra extensión es considerada contenido estático y devuelta con los encabezados HTTP del tipo MIME correspondiente.