Creando un sitio web completamente funcional usando solo codificación vanilla

Cuando digo "Codificación Vanilla", me refiero a sitios web que no utilizan codificación del lado del servidor (como PHP, ASP, etc.), solo HTML, JavaScript y CSS.

Sé que hay una gran cantidad de sitios que ya existen que no utilizan (que yo sepa) ninguno de los lenguajes comunes del lado del servidor utilizados por muchos otros (PHP, ASP, etc.), ¡pero aún funcionan bien!

¡Estoy confundido! ¿Cómo estos sitios continúan guardando información de inicio de sesión, manteniendo registros, etc., etc. sin usar un lenguaje de programación del lado del servidor? ¿Hay algo que me estoy perdiendo? ¿Puede JavaScript acceder a más (como bases de datos y archivos locales) de lo que pensé que podría?

EDITAR

Resulta que cometí un error grave y vergonzoso al suponer que solo porque terminaba con una extensión .html era solo del lado del cliente. Aunque eso está bien porque estoy aprendiendo. ¡Muchas gracias a todos por la ayuda!

preguntado el 16 de mayo de 11 a las 18:05

¿Tiene un ejemplo de esta "plétora de sitios"? Te das cuenta de que un sitio web puede usar .html como las terminaciones de la página y seguir usando un lenguaje del lado del servidor (o sin terminación)? Además, una página puede publicar desde theform.html -> processform.php -> thankyou.html, que utilizó una página del lado del servidor para procesar, pero nunca la vio. Y si, AJAX técnicamente puede guardar información de inicio de sesión, mantener registros, etc. JavaScript - pero estarán hablando con alguna página del lado del servidor en alguna parte. -

@DalexL: siempre había algo en el lado del servidor si estaban involucradas bases de datos y aplicaciones dinámicas. Ellos solo fueron llamados CGI mucho tiempo atrás cuando y escrito directamente en C (o similares) en lugar de lenguajes de nivel superior como PHP y ASP.Net con herramientas sofisticadas como IIS or Apache para abstraer toda la tecnología subyacente. -

Nunca hubo un momento así. Apuesto a que dentro de las 24 horas posteriores a la puesta en línea del primer sitio web que se creó utilizando HTML alrededor de 1990, un tipo inteligente descubrió que podía hacer que un script de Perl generara HTML de forma dinámica. Solían llamarlo "cgi".

@DalexL; @mellamokb: E incluso antes de eso, ni siquiera tenías servidores web dedicados, solo programas escritos en C que implementaban cualquier parte de HTTP o, como era a veces el caso, Gopher que les encantaba. -

Oh, GET y POST son parte de HTML 1.0: w3.org/Protocols/HTTP/1.0/draft-ietf-http-spec.html#GET Así que creo que podemos asumir que los "fundadores" habían pensado en el procesamiento del lado del servidor desde el principio. No tendría sentido nada más que un "get" sin parámetros si no hubiera procesamiento del lado del servidor. -

5 Respuestas

Esencialmente, a menos que tenga algo tipo de programación del lado del servidor, no tiene la oportunidad de hacer un sitio con ninguna cantidad de funcionalidad. Para desglosarlo por ti:

Qué puede hacer sin las secuencias de comandos del lado del servidor:

  • Sirve páginas estáticas

Para qué necesita secuencias de comandos del lado del servidor:

  • Absolutamente todo lo demás

Incluso algo tan simple como mantener un sitio consistente y actualizado es una pesadilla sobre ruedas sin, al menos, algún tipo de sistema de administración que pre-genere las páginas estáticas que serán servidas. (Técnicamente, se podría argumentar que Copiar + Pegar en el Bloc de notas cuenta como esto).

Como se ha mencionado en otra parte; ofuscar la verdadera naturaleza de exactamente qué sistema se está utilizando es trivial; y tener URL que terminen en, digamos, .html mientras se usa PHP no es un problema.

Edit: En el caso más perverso que se me ocurre, podría tener un servidor lighttpd disfrazado de servidor IIS, sirviendo páginas generadas por un renderizador fuera de línea alimentado por un script Perl FastCGI, enviado junto con el encabezado de la firma PHP y usando una combinación de extensiones de archivo .asp y .jsp.

Por supuesto, nadie haría algo tan tonto como eso. Yo creo que…

contestado el 16 de mayo de 11 a las 22:05

¡Vale, eso tiene sentido! ¡Gracias! - Freesnöw

@DalexL: Bueno, aquí está la cosa, aunque. No importa. Ni un poco. Como usuario del contenido, no debería tener que preocuparse, no debería querer preocuparse, y seguro que no debería preocuparse un poco. - Williham Totland

Ningún script del lado del cliente puede acceder a la información del lado del servidor (como una base de datos) sin algún tipo de comunicación del lado del servidor (a través de algo como ajax o similar)

Si realmente (quiero decir realmente como en no lo hagas) quieres iniciar sesión y similares en el lado del cliente, tendrías que crear algún tipo de cookie que almacenes en la computadora del usuario, también necesitarías una lista de usuarios (que cualquiera puede leer) para usar contra

contestado el 16 de mayo de 11 a las 22:05

Esta respuesta es muy tardía pero dejo esta respuesta para cualquiera que pueda tropezar con ella.

Usando javascript / jQuery y varias API, se puede crear un sitio simple solo usando codificación del lado del cliente.

Por ejemplo, se puede crear un sitio de tipo carrito de compras simple. Lo he hecho antes.

Hay pocas (no muchas) soluciones de carrito de compras estrictamente basadas en jQuery que sean de código abierto.

¿Cómo se atiende el PG (pasarela de pago)? Está limitado a aceptar pagos a través de PayPal, Google Checkout y depósito directo.

¿Qué hay de permitir que los clientes dejen comentarios? Puede utilizar API como Disqus. ¿Qué pasa con el soporte por chat? Zopim es bastante útil.

¿Cómo se le notifica cuando se realiza la compra? Paypal y Google Checkout le notifican.

¿Qué pasa con el envío de correos electrónicos masivos? Mail Chimp.

Personalmente, casi siempre uso WordPress u otros tipos de CMS, pero usar solo codificación básica para construir un sitio simple no solo es factible sino muy sensato en ciertas circunstancias.

respondido 08 nov., 12:09

No verá si un sitio está usando un idioma del lado del servidor a menos que le permitan ver las extensiones de archivo. Con la reescritura de URL, los patrones MVC, etc., es fácil ocultar o incluso falsificar esa información. Por lo tanto, es muy probable que los sitios que cree que no están usando un lenguaje del lado del servidor lo estén usando.

Ahora, un sitio puede guardar cierta información en cookies, como algunas preferencias básicas, pero cualquier autenticación que parezcan estar haciendo en realidad no estaría haciendo nada sin un script del lado del servidor que acceda a una base de datos en algún lugar.

Como nota al margen, he trabajado en un sitio donde el contenido sí estaba en realidad estático, pero hecho para parecerse a un blog o CMS. Fue una pesadilla absoluta y muy propensa a errores.

¿Cuáles son estos sitios que cree que no utilizan secuencias de comandos del lado del servidor?

contestado el 16 de mayo de 11 a las 22:05

Por lo que vale, PHP generalmente agrega un encabezado de respuesta cuando "construye" una página; algo como X-Powered-By:PHP/5.2.17 - sdleihssirhc

@sdleihssirhc: Si bien esto es cierto; esto puede a) desactivarse en php.ini, yb) falsificarse en cualquier otro idioma del lado del servidor. - Williham Totland

Hoy en día, muchos sitios utilizan Javascript como una solución del lado del servidor, siendo Node.js el más popular. Mira esto lista: https://github.com/joyent/node/wiki/Projects,-Applications,-and-Comjected-Using-Node

Respondido 09 Jul 13, 19:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.