3ENGINE

Programación y otros cachivaches

Etiqueta: Herramienta Web

Página 1/10

Tecnologia

Método rápido para servir archivos a través de HTTP (Servidor HTTP) con SimpleHTTPServer


Python viene con un módulo llamado SimpleHTTPServer que permite montar un sencillo Servidor HTTP al que acceder través de localhost. Esto es útil a la hora de desarrollar porque hay cosas que no funcionan con ficheros. Por ejemplo las URLs en los navegadores web.

En la documentación de Python explica que también es posible «lanzar» directamente el servidor HTTP utilizando el modificador -m del intérprete y como argumento opcional el número de puerto.

Ejemplo:

La clase encarga de hacer todo esto es SimpleHTTPRequestHandler que implementa la interface BaseHTTPRequestHandler. Esta clase es capaz de servir archivos del directorio actual y de cualquier archivo que esté por debajo, asi como la cartografía de la estructura de directorios en una petición HTTP:

Servidor HTTP

Un problemilla: SimpleHTTPRequestHandler no admite HTTP POST

Tengo form.html que contiene un formulario con un submit action de tipo POST:

Con el siguiente resultado:

form

Ahora bien si hago submit me encuentro con una desagradable sorpresa:

error

El problema es que SimpleHTTPRequestHandler implementa las funciones do_GET() y do_HEAD(), pero NO implementa do_POST() aunque si lo pensamos tiene cierta lógica.

Implementación de do_POST() con el objetivo de testear una aplicación

Si el objetivo es comprobar que información POST esta llegando al servidor esta implementación puede servirnos:

Si lanzo el script, ahora al hacer el submit de form.htm este es el resultado:

resultpost

Espero que os pueda servir.
demo: server.zip




Tecnologia

Cómo configurar un CGI en IIS7


CGI viene de Common Gateway Interface. Fueron una de las primeras tecnologías de la WWW que permitia a un navegador web solicitar datos de un programa ejecutado en un servidor web. Hoy en día esta en desuso, pero si por algún motivo necesitas hacerlo funcionar, te explico cómo configurar un CGI en IIS7.

Instalar (o configurar) IIS7

Instalar IIS7 desde la pantalla Activar o desactivar características de Windows que se encuentra en Programas y características de Windows 7. Para poder configurar un CGI es necesario activar las opciones CGI, Extensiones y Filtros ISAPI

Cómo configurar un CGI en IIS7

Edita las restricciones de ISAPI y CGI

Abre IIS7, haz doble click en el nombre del servidor en la parte superior y por último click en la opción Restricciones de ISAPI y CGI

Cómo configurar un CGI en IIS7

Ahora agrega una restricción, selecciona tu CGI (que normalmente tendrá extensión .dll o .exe) y activa la casilla Permitir ejecución de la ruta de extensión

Cómo configurar un CGI en IIS7

Edita tu aplicación Web para permitir ejecutar un CGI

Pero por defecto IIS7 no permite que una aplicación ejecute un CGI. Ahora en IIS7 selecciona tu aplicación y doble click en la opción Asignaciones de controlador

Cómo configurar un CGI en IIS7

Una vez dentro modifica los permisos de características del controlador CGI-exe y activa la casilla Ejecutar

Cómo configurar un CGI en IIS7

 

Reinicia IIS7

Para asegurar que IIS7 queda perfectamente configurado es recomendable reiniciarlo. Esto lo puedes hacer bien desde la propia consola de administración de IIS7 o bien desde la consola de comandos con la orden iisreset
 

Habilitar CGI de 32 bits

Si el CGI es una aplicación de 32 bits y IIS es de 64 bits no funcionará sino habilitas la opción. Si quieres saber cómo hacerlo te explico cómo habilitar aplicaciones de 32 bits en II7




Tecnologia

Como descargar videos de Youtube (y otros proveedores) con Youtube-dl


Existen varias aplicaciones que permiten descargar videos de youtube. (youtube-dl, cclive, clive, rtmpdump, get_flash_videos,…) Pero una de las aplicaciones mas sencillas es youtube-dl, disponible para Linux, Windows y Mac OS X. Necesitarás Python para que funcione.

descargar videos de Youtube

Para instalar youtube-dl en Ubuntu

1. Examinar https://yt-dl.org/downloads/ y localizar la carpeta mas actual. A fecha de hoy la carpeta mas actual es 2014.04.21.6:

2. Descargar la última versión de youtube-dl y dar permisos de ejecución:

Para instalar youtube-dl en Windows

1. Muy sencillo. Ir a la página de descarga y bajar la última versión de la aplicación. La aplicación es un simple .exe

Algunos comandos útiles

1. Actualizar a la última versión (hazlo si tienes problemas para descargar) :

2. Averiguar que proveedores soporta youtube-dl:

3. Descargar vídeos por palabra clave de youtube utiliza ytsearch. Por defecto descargará la primera coincidencia. Otra variante es ytsearchN donde N es el número de vídeos a descargar. Para descargar todos los vídeos que coincidan utilizar ytsearchall. Para buscar en google (www.google.es/videohp‎) utilizar gvsearch. Para buscar en Yahoo (http://es.video.search.yahoo.com) utilizar yvsearch :

Descargar la primera coincidencia

Descargar las tres primeras coincidencias:

Para listar las tres primeras coincidencias sin descargar los videos añadir -s:

4. Para descargar un vídeo en concreto (el de mas alta calidad) pasar la URL del vídeo:

5. Para ver resoluciones y formatos soportados de un vídeo en concreto:

Si por ejemplo el resultado es el siguiente:

Para descargar el formato identificado por el 18 (mp4 640×360):

7. Para mostrar la ayuda en linea:




Tecnologia

El archivo hosts, qué es y cómo modificarlo


El archivo hosts es usado por el S.O para guardar la correspondencia entre dirección IP y URL. Antiguamente cuando no habían servidores DNS el archivo hosts era el encargado de resolver las direcciones IP.

¿Que incluye por defecto el archivo hosts?

Por defecto el archivo hosts suele incluir la definición de localhost para pruebas de loopback. Puedes incluir otras correspondencias si necesitas redirigir dominios locales para probar páginas web que estás desarrollando o como método simple para bloquear el acceso a ciertas páginas.

archivo hosts

Por ejemplo, si necesitas bloquear el acceso a facebook tendrías que añadir lo siguiente:

En Linux el archivo se encuentra en /etc/hosts mientra que en Win XP/7/8 el archivo se encuentra en: C:\WINDOWS\system32\drivers\etc

Si tienes problemas para modificar el archivo este video explica paso a paso cómo hacerlo:

 

Recursos
http://es.wikipedia.org/wiki/Archivo_hosts