8. Lighttp CGI
Note
Servidor web para ejecutar CGI
1dnf install lighttpd
2systemctl enable lighttpd
3systemctl start lighttpd
Directorio de trabajo /etc/lighttpd
Cambiar el puerto de trabajo para que no coincida con otro servidor web y la ruta de ubicación de los scripts. Fichero lighttpd.conf
var.server_root = "/opt" server.port = 8081 server.bind = "0.0.0.0"
Añadir en módulo de CGI al servidor. Fichero modules.conf
server.modules = ( # "mod_rewrite", "mod_access", "mod_cgi", # "mod_auth", # "mod_authn_file", # "mod_redirect", # "mod_setenv", # "mod_alias", ) . . include conf_dir + "/conf.d/cgi.conf"
Añadir configuración para que se habilite el cgi. Fichero conf.d/cgi.conf
alias.url += ( "/scripts" => "/opt" ) $HTTP["url"] =~ "^/scripts" { cgi.assign = ( ".py"=> "/usr/bin/python3" ) }
Ficheros con lógica de negocio. Ficheros /opt/scripts/test.py
#!/usr/bin/python3 import sys, os print("Content-Type: text/plain\n") print("Hello world!")
Permisos para los ficheros /opt/scripts/test.py
sudo chmod 766 /opt/scripts/*
Reiniciar el servicio
systemctl restart lighttpd