CGI(oh) LOCAL CGI(oh) cgi - configuracion y uso CGI script - Un script requiere un interprete. (eg.: #!/bin/ksh). - La primera linea debe ser 'echo "Content-type: text/html"'. - La segunda linea escrita debe estar vacia 'echo ""'. - Copiar los ejecutables (incluyendo el interprete) a /var/www/bin/. - Copiar las dependencias a su estructura correspondiente dentro de /var/www. - Los ejecutables y las librerias deben corresponder al usuario www. ejemplo $ whereis grep /usr/bin/grep $ ldd /usr/bin/grep Start End Type Open Ref GrpRef Name 0000030be12e4000 0000030be12ef000 exe 1 0 0 /usr/bin/grep 0000030e32295000 0000030e322b3000 rlib 0 1 0 /usr/lib/libz.so.6.0 0000030eb72e8000 0000030eb73dd000 rlib 0 1 0 /usr/lib/libc.so.96.1 0000030de67ed000 0000030de67ed000 ld.so 0 1 0 /usr/libexec/ld.so $ doas install -o www /usr/lib/libz.so.6.0 /var/www/usr/lib/ $ doas install -o www /usr/libexec/ld.so /var/www/usr/libexec/ httpd.conf La ubicacion de los scripts de cgi deben tener el socket fastcgi definido. server default { ... location "/$CGI_PATH/*" { fastcgi socket "/run/slowcgi.sock" } } EJEMPLO curl Esta pagina tiene la ubicacion "/:*" definida, al acceder desde curl se muestra la version en texto de los archivos. location /:* { fastcgi { param SCRIPT_FILENAME "$CGI_PATH_FROM_CHROOT/$SCRIPT"} } httpd.conf server default { listen on * port 80 root "/htdocs/$DIR" location "/$CGI_PATH/*" { fastcgi socket "/run/slowcgi.sock" } #curl access location "/:*" { fastcgi { param SCRIPT_FILENAME "$CGI_PATH_FROM_CHROOT/$SCRIPT"} } } PRUEBAS chroot /var/www para probar el script y asegurarse que todas las dependencias se encuentran disponibles y tienen los permisos correctos. SERVICIOS 1. Prueba: doas slowcgi -dnvvv 2. Habilitar e iniciar. doas rcctl enable slowcgi doas rcctl restart slowcgi 3. Reiniciar httpd. ACTUALIZAR Al actualizar el sistema, se deben actualizar los ejecutables y sus dependencias. VER TAMBIEN ejemplos: ejemplo de cgi con figlet: /cgi/example.cgi , buscar: /cgi/search.cgi archivos de texto: , , Manuales de OpenBSD: slowcgi(8), rcctl(8) links - Serving Fossil via httpd on OpenBSD: https://www.fossil-scm.org/home/doc/trunk/www/server/openbsd/fastcgi.md HISTORIAL 2026-07-12 : Creado. AUTORES ohazot(oh) | info(oh) | ohazot.com: https://ohazot.com OpenBSD 7.9 2026-07-12 CGI(oh)