Foros del Web » Programando para Internet » PHP »

Php como cgi o script

Estas en el tema de Php como cgi o script en el foro de PHP en Foros del Web. Saludos. Soy nuevito en la programacion web, y... bueno queria saber en que se diferencia que se use php como cgi o como script. Gracias ...
  #1 (permalink)  
Antiguo 11/01/2006, 18:19
 
Fecha de Ingreso: octubre-2005
Mensajes: 7
Antigüedad: 12 años, 2 meses
Puntos: 0
Php como cgi o script

Saludos.
Soy nuevito en la programacion web, y... bueno queria saber en que se diferencia que se use php como cgi o como script. Gracias por las respuestas
  #2 (permalink)  
Antiguo 11/01/2006, 19:44
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 15 años, 7 meses
Puntos: 7
Si lo usas como CGI significa que solo procesan resultados. Le envias uno o mas datos(como un formulario, por ejemplo) y te devuelve valores. Si lo usas como script puedes combinarlo con HTML
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 12/01/2006, 01:10
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 16 años, 3 meses
Puntos: 380
Tema trasladado desde Web general
  #4 (permalink)  
Antiguo 13/01/2006, 02:43
Avatar de ianzurken  
Fecha de Ingreso: enero-2006
Mensajes: 7
Antigüedad: 11 años, 11 meses
Puntos: 0
Cita:
Iniciado por Mickel
Si lo usas como CGI significa que solo procesan resultados. Le envias uno o mas datos(como un formulario, por ejemplo) y te devuelve valores. Si lo usas como script puedes combinarlo con HTML
A ver no confundais que son cosas distintas

Es sabido que los script CGI escritos en Perl y los script PHP se utilizan sobre todo para la realización de páginas dinámicas, dejando de lado por un momento el lenguaje ASP que, recordamos, es propietario y puede utilizarse (casi) sólo en webserver NT con IIS.

El PHP, sobre todo en estos últimos tiempos, se está imponiendo como lenguaje principal de scripting para la realización de páginas dinámicas. En primer lugar porque es multiplataforma, es decir, es posible encontrar el motor PHP para las plataformas más utilizadas.
Pero el PHP, lentamente y inexorablmente, está superando por complejidad a los CGI y esto se puede justificar por varias cuestiones:

* PHP es un lenguaje embeeded (empotrado) en el código HTML de las páginas y no necesita, por lo tanto, otros archivos para que se ponga en marcha;

* un script PHP, de hecho, no necesita ser instalado como ocurre con un script CGI. Los que han leído alguna vez algún artículo en www(punto)cgipoint.it, se habrán dado cuenta de que cada script tieneque cargarse en el servidor en determinados directorios, con permisos especiales, etc.. Con el PHP esto ya no pasa: además de no necesitar un directorio cgi-bin, ya que el código se introducee directamente en las páginas, una vez que la página se cargue el script está listo para el uso, siempre que se haya configurado correctamente;

* con el PHP ya no se necesitan configuraciones especiales del servidor de la red para que se habiliten directorios cgi-bin o la realización de unos archivos que tengan determinadas extensiones. Primero se dan instrucciones al servidor de la red, luego cada script (o mejor, cada página que tenga el código del script) se puede poner en marcha en CADA directorio donde esté. Fijaos en la comodidad de esta característica del PHP.

Por supuesto, estas son sólo algunas de las características que permiten al PHP superar a los CGI, y pueden ser criticadas por los fanáticos del "otro bando". Obviamente, los CGI tienen sus ventajas y elegir entre uno y otro lenguaje (o los dos a la vez) es algo personal. Si hablamos de "qué se puede hacer con PHP" se puede decir que, a partir de la versión 4, las posibilidades del PHP son prácticamente iguales a las de los CGI en Perl, pero no a las del mismo Perl.
  #5 (permalink)  
Antiguo 13/01/2006, 08:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Al margen de la explicación que da ianzurken, PHP en sí se puede ejcutar como CGI o como módulo de un servidor HTTP (Apache "módulo", IIS como ISAPI ..). (creo que por ahí iva la pregunta?)

El caso que PHP ejecutado como CGI se levanta una sesión de PHP (del "interprete") por cada script que ejecutas. Esto tiene los beneficios de separación de procesos y control directo sobre la ejecución de los mismos por parte del S.O. Por ejemplo en Linux, PHP bajo CGI es el usuario que lanza el script su propietario.

En modo "módulo" PHP funciona bajo el servidor HTTP a espensas de el. Se instala como un "módulo", se "levanta" cuando lo hace el servidor HTTP y queda en "memoria" a costa de consumo extra de recursos del servidor pero ganar en rapidez a la hora de ejecutar un script PHP (por qué ya tienes el "interprete" cargado y no como en modo CGI que se ha de "levantar" una instancia más). A nivel de "usuarios" y persiso .. tus scripts PHP heredan los permisos y son ejecutados por el Usuario que use (valga la rebundancia) el servidor HTTP (Apache o el que uses). Esto en algunos casos complica el hecho de tener que realizar alguna acción de tus scritps PHP y tengas que darle permisos a "todo" el servidor y no poder separa el proceso por "cierto" usuario.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:26.