sábado, 24 de marzo de 2012

Apache http server Vs Internet Information Server


Apache http server Vs Internet Information Server (IIS)


Ranking Servidores Web Febrero 2012 (sites totales)
Apache 397,867,089 hostnames (64.92%)
Microsoft 88,210,995 hostnames (14.39%) 
nginx 60,627,200 hostnames (9.89%)
Google 19,394,196 hostnames (3.16%)
Ranking Servidores Web Febrero 2012 (sites activos) 
Apache 106,664,061 hostnames (57.45%)
nginx 23,590,737 hostnames (12.71%)
Microsoft 22,363,730 hostnames (12.05%)
Google 14,316,485 hostnames (7.71%)
http://www.desarrolloweb.com/de_interes/ranking-servidores-web-febrero-2012-6716.html

Apache 


 Es un servidor HTTP de codigo abierto y multiplataforma que nace en 1995 basado en el codigo de NCSA HTTPd Server y es el servidor mas usado.


 Ventajas


- A día de hoy, este servidor de código abierto se encuentra disponible para una amplia variedad de sistemas operativos, desde Unix, Linux, GNU, FreeBSD, Netware, Solaris, Windows, Mac OS X, OS/2, TPF, y eCS.


- Su popularidad hace que sea facil encontrar ayuda/manuales. 


- Se puede usar modulos para agregar funcionalidad; actualmente existen todo tipo de modulos. 


- Posibilidad de alojar multiples sitios web en una misma maquina. 
- Robusto y estable. 


- Abarca la mayoria de los lenguajes web y la mayoria de los que no soporta seles puede compatibilisar con algunos plugins y aplicaciones.



- Php(lenguaje standard de este servidor),cgi, Perl, cold fusion , mysql(standard en bases de datos de este server),jsp, sql, MSsql, asp,asp.net(estos solo funcionan en modo perlscript y c o instalando el chilisoft), xml, ajax, 


Desventajas



- No existe aún configuración gráfica oficial.


- Curva larga de aprendizaje para sacarle el máximo partido.



- Criticado por la falta de interfaz grafica que ayude en la configuracion.




Internet Information Server (IIS) 


IIS es la plataforma de servidores desarrollada por microsoft y ha tenido un asenso significativo por su compatibilidad con los host y por sus nuevas innovaciones como .Net, siverligth,entre otros....uno de los factores mas importantes sobre el acenso de este servidor es qe viene preinstalado en las mayoria de los Os de microsoft por lo cual fue el estandar de servidores por mucho tiempo.


Ventajas



- Fácil de usar.


 - ASP preparado en la instalación por defecto.


 - Soporte ODBC integrado.


 - Configuración gráfica y en línea de comandos.


Desventajas




- Soporta solo los lenguajes desarrollados por microsoft y algunos otros standard, Asp, Asp.net , vbscript, ajax, msSql, mysql(en versiones superiores a Win2000), xml, Acsses.


- No es multiplaforma, solo funciona bajo Windows.


- Multitud de nuevos fallos de seguridad.



- La mayoría de funcionalidad extra debe ser comprada separadamente.


- Sólo funciona en Windows NT/2000.






Creacion de Host virtuales en Apache

Creacion de Host virtuales en Apache


VirtualHost, en Apache nos permite mantener múltiples nombres de host en nuestro servidor.




Nota
Haz una copia de respaldo de tus archivos de configuración antes de realizar cualquier cambio en ellos.

Podemos aprender a hacerlo mediante el siguiente video o siguiendo el texto que le sigue.




Al trabajar en nuestro servidor web local, nuestros proyectos, acostumbramos guardarlos en carpetas separadas dentro del directorio raíz (C://WWW/) y convocamos nuestros proyectos en el navegador asi:



http://localhost/tiperu

En lo personal prefiero usar el nombre del dominio real de mis proyectos, que aplicado al ejemplo anterior es:

http://www.tiperu.com en lugar de http://localhost/tiperu

Esto se logra configurando la directiva VirtualHost en el servidor Apache y el archivo host de nuestro S.O.(Windows O Linux)

Configurando el archivo host.

En linux lo encontramos en el directorio /etc/. Para Windows 
C:/Windows/System32/Drivers/etc/, con este archivo se asignan las direcciones IP a los nombres de host. Ahora colocamos tantas entradas como proyectos, relacionando la IP local con nuestros nombres de dominio debajo de 127.0.0.1 localhost:

#localhost
127.0.0.1 localhost
#TIPeru COM SAC (Mi empresa de hosting)
127.0.0.1 www.tiperu.com

El carácter "#" permite ingresar texto a manera de comentario, ahora guardamos. Debemos recordar respetar el nombre completo cuando lo llamamos, porque tiperu.com no tendria efecto por faltar el www que lo antecede.

Configurando el archivo httpd.conf del Apache

Para que Apache acepte los nombres de dominio, agregados al archivo host y los relacione con las carpetas que contienen los archivos de nuestros proyectos; abrimos el archivo conf/http.conf y nos dirigiremos a la siguiente dirección:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#

Quitamos el comentario ##NameVirtualHost *:80 y escribimos:

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#

Para configurar el host virtual lo agregamos asi:

#TIPeru COM SAC
<VirtualHost *:80>
DocumentRoot "C:/wwww/tiperu"
ServerName www.tiperu.com
</VirtualHost> 

Como vemos el Virtual Host esta encerrado entre <VirtualHost> y </VirtualHost>  que contienen el parametro *:80 que es NameHostVirtual al cual se refiere. Dentro de estas etiquetas, DocumentRoot es la ruta en la cual se guarda nuestra pagina web, ServerName es el nombre del host que agregamos anteriormente al archivo host de nuestro S.O.

Importante:

localhost es nuestro servidor local por defecto pero debemos agregarlo con un virtual host para que todo funcione en orden, agregandole los mismos valores del DocumentRoot y ServerName que posee en su configuración global.

Reiniciamos Apache y si todo esta bien podemos escribir en el navegador  www.tiperu.com  cargara el contenido asignado en el <VirtualHost> y no el directorio raíz del localhost.

Fuente: http://www.maestrosdelweb.com/editorial/host/


miércoles, 21 de marzo de 2012

Drupal o Kentico

Tu primer cliente

Un día te encuentras con un cliente, este quiere hacer un sitio autoadministrable (que pueda quitar y agregar contenido según sus necesidades sin que usted intervenga) y le recomendaron utilizar Drupal o Kéntico como CMS. El cliente le expresa que la empresa esta iniciando por lo que necesita algún servicio de hosting que no afecte su presupuesto,pero que sea suficiente para recibir sus clientes, Sugiera un CMS y un servicio de Hosting de acuerdo a sus necesidades.

Tomando en cuenta nuestro principal parámetro que "no afecte su presupuesto", utilizaremos Drupal.  

Drupal es un  Sistema Administrativo de Contenido Open Source; la licencia del mismo es gratis, se puede customizar según las necesidades de la empresa o persona que lo utilice. esto quiere decir que podemos utilizarlo sin pagar por ello, ahorrándonos el costo por desarrollo, actualización o mantenimiento, es seguro y brinda una interfaz amigable al usuario. Referencias? Pregúntale a la Casa Blanca, esta desarrollado en Drupal. El sitio oficial es  http://www.drupal.org,




Kentico es un sistema de gestión de contenidos para el desarrollo de páginas web, tiendas on-line, intranets y comunidades web 2.0. Kentico ha sido utilizado en más de 7000 páginas web y en más de 87 países del mundo . Su licencia cuesta entre $2000, $4500 y $15000 el cual es un costo muy elevado este caso, sin contar la Licencia de Microsoft SQL server que necesita. Ambos CMS son muy potentes, pero por razones economicas, nos quedamos con Drupal.

Hosting



Cuentas de Correo Ilimitadas 4GB de espacio y 100 Gb de transferencia mensual, Acceso a PHP my admin con todas estas carácteristicas a solo 79$  al año.





miércoles, 22 de febrero de 2012

Servicios Web

Cuando el web inició, se encontraba en un entorno estático; páginas que mostraban pocas actualizaciones y no ofrecían interacción con el usuario.

Luego vino la web 2.0, marcando la transición entre las aplicaciones tradicionales hacia aplicaciones web pensadas para el consumo del usuario final, tratandose de servicios que reemplacen las aplicaciones de escritorio.

Mashup


"En desarrollo web, un mashup es una página web o aplicación que usa y combina datos, presentaciones y funcionalidad procedentes de una o más fuentes para crear nuevos servicios. El término implica integración fácil y rápida, usando a menudo APIs abiertos y fuentes de datos para producir resultados enriquecidos que no fueron la razón original para la que fueron producidos los datos en crudo originales." Wikipedia

Entonces, es importante procesar los datos existentes y derivar otros más útiles. Los datos los obtenemos de otras fuentes,por medio de un API (web services).

Conocemos 3 tipos de mashup: mashups de datos, mashups empresariales y mashups de consumidores, este ultimo es el más conocido por aplicaciones que utilizan GMaps, en otros casos los hay de videos y fotos, busqueda y compras y noticias.

Las APIs son la opción más facil para realizar mashup combinando servicios líderes, y un poco de trabajo que nos lleve a resultados enriquecidos. Un caso que vale la pena mencionar es el de Panoramio; creado utilizando la API de Google Maps, tuvo tanto éxito que fue comprada por el mismo Google.

Las APIs más populares:


  • Google Maps




  • Youtube

  • Facebook

  • lunes, 13 de febrero de 2012

    ¿Que es la interoperabilidad?





    Es la capacidad que tienen las aplicaciones o soluciones normalmente de diversos fabricantes de comunicarse entre sí mediante estándares y utilizar la información intercambiada.


    ¿Has oído hablar de interoperabilidad?
    Es un término muy poco conocido entre los usuarios comunes de internet, sin embargo todos la llevamos a cabo.

    Ejemplos:
    Cuando usamos nuestra computadora con windows como sistema operativo, para actualizar nuestro blog en
    WordPress que trabaja con tecnología PhP y MySQL, ó cuando desde Windows  Live Messenger revisamos las novedades de nuestros contactos en Facebook o Linkedin.

    El Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) define interoperabilidad como la habilidad de dos o más sistemas o componentes para intercambiar información y utilizar la información intercambiada.

    XML hasta el día de hoy es el estándar en la gran mayoría de aplicaciones o soluciones modernas para intercambiar información entre plataformas diferentes.

    Importancia del XML para la interoperabilidad

    XML es una destacada herramienta en la interoperabilidad, ya que nos permite definir un estándar para el intercambio de datos entre aplicaciones o software de manera eficiente, ejemplificado de forma sencilla; el idioma ingles sería el XML que utilizamos para comunicarnos de manera estandar entre personas de diferentes países, llevado a aplicaciones o software, es el idioma común que ha sido definido como estandar y no sólo nos permite intercambiar datos sino poder definir niveles de comunicaciones, protocolos y en niveles mas avanzado intercambios de información que puede lograr la interoperabilidad de aplicaciones o soluciones diseñados para propositos diferentes o entornos diferentes.