2010-12-10 15 views
11

que han pasado la totalidad de ayer tratando de que mi cabeza redonda websockets HTML5, pero todavía estoy un poco confundido acerca de algunos puntos:Requisitos del servidor HTML 5 WebSockets

  1. ¿Tengo que instalar ningún agregar más complementos a mi servidor Apache para ejecutar un servidor websocket?
  2. ¿Es posible ejecutar websockets en una configuración de servidor compartido sin acceso a la raíz del servidor?
  3. ¿Son compatibles los websockets con IE9, si no, entonces ¿hay algún punto de trabajo con ellos si hay un soporte de navegador tan limitado? ¿Debería ver las técnicas de votación en su lugar?
  4. ¿Cómo se puede ejecutar websockets simultáneos (por ejemplo, múltiples instancias de aplicaciones de chat) cómo se define cada uno de manera única?
  5. ¿Existe un respaldo confiable para los navegadores que no admiten websockets?

Espero que alguien me ayude a entender estos puntos, ¡muy gratos!

W.

+0

Esto podría interesarle: http://www.webmonkey.com/2010/12/security-flaws-force-firefox-opera-to-turn-off-websockets/ –

Respuesta

4

No piense en WebSockets como un complemento de servidor web. WebSockets es una forma de establecer una conexión de socket (casi) sin formato entre un navegador y otra cosa. Existe un deseo en el comité de estándares de permitir que los servidores web reenvíen fácilmente las conexiones de WebSocket a su servicio objetivo, sin embargo, a partir de la v76 del protocolo, el protocolo de enlace WebSockets es explícitamente incompatible con la configuración de HTTP (por razones de seguridad imprecisas). Esto puede cambiar en el futuro, especialmente ahora que se ha encontrado un problema grave de seguridad en el proceso de configuración v76.

Sí, el saludo de WebSockets se parece mucho a HTTP, por lo que es fácil confundirse, pero incluso cuando era compatible con una solicitud de actualización HTTP, solo era para permitir el reenvío fácil por el servidor web, no para que el servidor web podría convertirse en un servidor WebSockets.

Hay una reciente security issue in WebSockets lo que probablemente significa la mayoría de los fabricantes de navegadores desactivará WebSockets hasta la próxima versión del protocolo está listo, pero aparte de eso WebSockets es el apoyo más o menos universalmente porque los navegadores sin soporte nativo pueden utilizar web-socket-js que es un flash base de respaldo. iOS 4.2 también tiene soporte para WebSockets (aunque nuevamente, eso puede deshabilitarse temporalmente debido al problema de seguridad).

Así que las respuestas a sus preguntas son: 1) Mu 2) Sí 3) Improbable 4) No está definido por WebSockets 5) Sí: ver web-socket-js

0

1) Nº 2) Sí. 3) Quién sabe. Y Microsoft no está diciendo, como de costumbre, pero probablemente no.

Firefox, Chrome y Opera anunciaron que no admitirán sockets web por ahora porque el estándar está incompleto y tiene problemas de seguridad. Puede ser demasiado temprano para estar jugando con esto en este momento.

+0

Chrome, Firefox 4, Safari y Opera todo admite el borrador de WebSocket 76. Incluso es compatible con Safari en el iPhone. Dado que los estándares de WebSocket aún están en proceso de elaboración, se espera cierta compatibilidad de última hora en el futuro. – BastiBen

+0

La razón por la que estoy confundido es porque todos los tutoriales para websockets muestran que el servidor se inicia a través de una interfaz de línea de comando. Cuando la aplicación está en línea y no local, no tengo acceso a dicha interfaz de línea de comando. Además, si no se requiere más software en un servidor Apache, ¿para qué sirve este http://code.google.com/p/pywebsocket/? – wilsonpage

+0

@badcat - Google para las noticias recientes de las que hablo desde FF, Opera y Chrome. – Rob

4

¿Hay un repliegue fiable para los navegadores que don ¿Soporta websockets?

Socket.IO parece funcionar bien. Todavía no me he desarrollado con esto, pero probé aplicaciones que lo usan con navegadores que no son compatibles con WebSockets de forma nativa.

Por lo que vale, es posible que desee dejar el HTML5 al hablar o investigar esto. WebSockets ya no son parte de HTML5. Si busca información sobre "WebSockets HTML5", es más probable que encuentre información anticuada.