El modo CGI es uno de los tres modos en los que se suele ejecutar PHP. CGI es el acrónimo de Common Gateway Interface. Es un estándar para la interfaz con aplicaciones externas en servidores web Apache. Cuando un programa o un script se ejecuta en modo CGI, se ejecuta en tiempo real, de modo que pueda generar información dinámica. Estos scripts se pueden escribir en PHP, Perl, Bash, C, C++ y muchos otros lenguajes de programación.
Los scripts que se ejecutan en modo CGI puro, están aislados del servidor web, por lo que la URL de los scripts para el acceso externo no será la misma que la que utilizamos para acceder a los archivos HTML o PHP de nuestro servidor, que habitualmente están en el directorio «/var/www/». Los archivos .php a los que accedes dentro de este directorio, suelen ser scripts ejecutados en modo mod_php o en modo FastCGI, pero no en modo CGI.
Contenidos
Encontrar el directorio cgi-bin
El servidor web Apache utiliza la directiva ScriptAlias para definir el directorio cgi-bin, que contendrá los scripts del servidor. Si en tu servidor web existe un directorio llamado public_html, entonces, el directorio cgi-bin seguramente esté en su interior. Este caso se da cuando utilizas algún panel de hosting como CPanel o VestaCP. Una vez hayas encontrado el directorio cgi-bin, podrás utilizarlo.
En caso de no usar un panel de hosting o no encontrar el archivo, puedes buscarlo abriendo el archivo de configuración del servidor web Apache, utilizando un editor de texto como vi o nano. Una vez abierto, busca la directiva ScriptAlias.
Vamos a ver las diferentes localizaciones en las que se encontrará el archivo httpd.conf, que es el archivo de configuración de Apache. Estos son los comandos para editar el archivo:
Editar el archivo httpd.conf en Debian:
$ vi /etc/apache-perl/httpd.conf
Editar el archivo httpd.conf en Red Hat, CentOS y Fedora:
$ vi /etc/httpd/conf/httpd.conf
Editar el archivo httpd.conf en FreeBSD:
$ vi /usr/local/etc/httpd.conf
Si lo prefieres, también puedes utilizar el comando grep del siguiente modo para encontrar el directorio cgi-bin de un modo más directo:
$ grep 'ScriptAlias' /etc/httpd/conf/httpd.conf ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
En el ejemplo anterior, el directorio cgi-bin es el «/usr/lib/cgi-bin/».
Localización por defecto del directorio cgi-bin
Localización por defecto de los directorios cgi-bin en servidores Linux:
- Red Hat: /var/www/cgi-bin/
- Centos: /var/www/cgi-bin/
- Fedora: /var/www/cgi-bin/
- Debian: /usr/lib/cgi-bin/
- Ubuntu: /usr/lib/cgi-bin/
- FreeBSD: /usr/local/www/cgi-bin/
Encontrar la URL de los scripts cgi-bin
Finalmente, la URL de estos scripts dependerá de la localización de este directorio. Puedes utilizar http://tu-ip/cgi-bin o http://tu-ip/~tu-nombre/cgi-bin para acceder a los scripts con tu navegador. Debes reemplazar tu-ip con tu nombre de dominio o con la IP del servidor y tu-nombre, con tu nombre de usuario.
Hola buenas tardes Edu no se si esto que te oreguntare es normal pero tengo muchos comandis en. I celular y si me puedes ayudar con eso estaría de lujo solo para saber de donde omprobienen ya que son cosas que nunca instale de antemano gracias