Foros del Web » Programación para mayores de 30 ;) » Programación General »

Problemas con Content Type en IIS

Estas en el tema de Problemas con Content Type en IIS en el foro de Programación General en Foros del Web. Hola a todos! Esto es de los problemas mas extraños con los que me he topado: Me han pasado una aplicación en Perl (del que ...
  #1 (permalink)  
Antiguo 24/09/2009, 04:18
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Desacuerdo Problemas con Content Type en IIS

Hola a todos!
Esto es de los problemas mas extraños con los que me he topado:

Me han pasado una aplicación en Perl (del que no tengo mucha idea) y he instalado en mi maquina (Win 2000 server) el Active Perl (última versión) para poder ejecutar los archivos.
Cambie el perl.exe por el perlis.dll para que no diera problemas el IIS.

Resulta que el comportamiento que tiene al procesar los archivos .pl es increible:
- Si añado a comienzo la linea habitual para mostrar datos por pantalla
Código HTML:
print "Content-type: text/html\n\n";
¡La página muestra dicho texto!
- Si no lo añado la página da error
- Si el script trabaja sobre una plantilla HTML al tener ésta el encabezado '<!DOCTYPE' muestra el resultado de la plantilla OK.

He adoptado una estrategia para solucionar este problema. Un parche, sin duda:

En los casos que tengo que mostrar datos sin usar una plantilla HTML lo que he hecho es cambiar la linea
Código HTML:
print "Content-type: text/html\n\n";
por
Código HTML:
print "<!-- Content-type: text/html\n\n -->"; #o bien 
print "// Content-type: text/html\n\n"; 
#si el contenido a devolver en el código es javascript
De esta manera parece que ve el 'Content Type' y la procesa, y al estar comentado no aparece el texto por pantalla...

¿Tiene esto alguna solución? ¿Estoy haciendo algo mal o que me falta por configurar?

Gracias por adelantado y un saludo.
  #2 (permalink)  
Antiguo 24/09/2009, 05:46
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Problemas con Content Type en IIS

Si el texto Content-type sale por pantalla, es que el programa Perl ya ha enviado antes las cabeceras MIME.

Revisa el código, las líneas anteriores, por si hay alguna salida hacia el exterior.
__________________
JF^D Perl Programming en Español
  #3 (permalink)  
Antiguo 24/09/2009, 06:30
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Problemas con Content Type en IIS

Hola gracias por tu ayuda.

Pues la única linea anterior que hay es:
#! C:\archiv~1\Perl\bin\perl.exe -w
Y no hay nada que se ejecute antes. De hecho si quito la linea print "<!-- Content-type: text/html\n\n -->"; da error, supongo que porque no interpreta ninguna salida el IIS
  #4 (permalink)  
Antiguo 24/09/2009, 16:52
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Problemas con Content Type en IIS

¡AAAaahhh! ¡¡¡Estás ejecutando el IIS!!!

Pues... ¡Buena suerte! (Disculpa, creí que estabas usando el servidor web que usamos todos, el Apache) A ver si otro puede darte otra pista...

P.D. Acabo de darme cuenta que tienes activo los warnings (el -w). Quítalo y prueba a ver... es posible que en la fase de compilación, Perl descubra algo extraño y genere una salida de warnings, confundiendo al IIS. Y, sobre todo, mira en los ficheros de actividad (log) del servidor web.
__________________
JF^D Perl Programming en Español
  #5 (permalink)  
Antiguo 28/09/2009, 05:35
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Problemas con Content Type en IIS

Hola de nuevo.
Mas lo siento yo pues es el server en el que me ha tocado trabajar. Ya me gustaria poder elegir.

He probado a quitar el -w y la respuesta es la misma...
En el log del IIS lo único que he visto raro es algunos códigos 304 para imágenes o archivos css que carga el script. Por lo demás nada...
¿Alguna idea?
  #6 (permalink)  
Antiguo 30/09/2009, 03:50
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Problemas con Content Type en IIS

Humm... sin ver el código es difícil encontrar más pistas.

¿Podrías hacer una copia del programa, quitarle todas las líneas que sobran y quedarte solo con las líneas que sabes que te dan problemas? Es decir, enseñarnos la parte del programa que sabes que genera ese error. Y luego nos dices donde y cómo pones la otra línea que lo resuelve.

Queremos intentar reproducir en nuestras máquinas lo mismo que te pasa a ti.

En cuanto a los log de actividad, recuerda que suelen ser dos (al menos, en los servidores web decentes): el de actividad y el de errores. El que te interesa es el de errores.
__________________
JF^D Perl Programming en Español

Última edición por jferrero; 30/09/2009 a las 03:55
  #7 (permalink)  
Antiguo 16/12/2009, 07:12
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Problemas con Content Type en IIS

Hola de nuevo compañeros.
Ha pasado tiempo desde que dejamos este hilo, pero tuve que aparcar el script en el que estaba trabajando... He vuelto a retomar el tema y sigo con los problemas.

He hecho un truco como decía para poder mostrar contenido html
Supongamos el archivo prueba.pl. Para mostrar 'Hola Mundo' tengo que poner entre comentarios html el content type:

Código HTML:
#! C:\Archivos de programa\Perl\bin\perl.exe -w
print "<!--// Content-type: text/html\n\n-->";
print "<h1>Hola Mundo!</h1>";
Si pongo: print "Content-type: text/html\n\n"; Muestra la sentencia por pantalla
Si no lo pongo da error el explorador. Pero veo en el log '200'

Luego, por otra parte. No he sido capaz de ejecutar una redirección del tipo

Código HTML:
#! C:\Archivos de programa\Perl\bin\perl.exe -w
print "Location:http://www.google.com\n\n";
En el log del IIS aparece en codigo 302 de error de respuesta...
No sé que hacer.... ¿Alguien tiene alguna idea?
Gracias por vuestra ayuda.
  #8 (permalink)  
Antiguo 16/12/2009, 18:33
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Problemas con Content Type en IIS

Yo... voy a decir... que el problema es usar el IIS.

¿No puedes instalarte un Apache, como la mayoría?

El paquete XAMPP te lo instala todo junto.
__________________
JF^D Perl Programming en Español
  #9 (permalink)  
Antiguo 17/12/2009, 02:38
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Problemas con Content Type en IIS

Hola de nuevo JFerrero! Gracias por la atención.
Pues la verdad es que no puedo, pues no lo administro yo.
Pero he visto que aunque no sea lo ideal, hay gente que ha tenido que utilizar Perl sobre IIS
Y... ¿Nadie ha tenido en este problema?
  #10 (permalink)  
Antiguo 17/12/2009, 15:28
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Respuesta: Problemas con Content Type en IIS

Cabe la posibilidad de que IIS no sepa que tiene que ejecutar el programa en lugar de volcarlo al usuario.

Debes repasar la configuración del IIS para indicarle que
a) Los ficheros indicados en un determinado directorio deben ser ejecutados, y no leídos y volcados, o bien, que
b) Los ficheros que terminan en .pl han de ser ejecutados.
__________________
JF^D Perl Programming en Español
  #11 (permalink)  
Antiguo 19/12/2009, 13:58
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Problemas con Content Type en IIS

Hola.
Yo diria que está bien. De hecho procesa las páginas en las condiciones que decia.
(Pero fallan las redirecciones, no entiende el encabezado http...)

El .pl está asignado a la aplicacion perlis.dll
Tengo el cgi-bin con permisos de ejecución.... Ahora, además cree un directorio virtual cgi-bin dentro del servicio web.
Saludos.
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 23:26.