¿Cómo construyo un sitio web similar a craigslist con un presupuesto?

TLDR : Divagación larga y cuestionable sobre diversas tecnologías web .

Por menos de cincuenta dólares, hay muchos sitios de alojamiento a precios razonables donde puede obtener un nombre de dominio y un año de alojamiento web. Yo uso A2 Hosting, pero de ninguna manera es el único que existe.

Yo recomendaría no alojar un sitio web de acceso público en su computadora; Es un riesgo de seguridad marginal, pero lo más importante es que no podrá manejar el tráfico de gran volumen y almacenar grandes cantidades de contenido. Si tiene algún tipo de rack de servidores en casa, ignore lo que acabo de decir, pero aún necesitará algún tipo de dirección IP estática y un nombre de dominio asociado con esa IP para que sea accesible de manera consistente y fácil.


La forma general en que su aplicación terminará funcionando se parece a estos pasos, comenzando en el nivel de un usuario que accede a su sitio web.

  1. El usuario abre la URL en el navegador; El navegador solicita la página del servidor.
  2. El servidor resuelve la dirección en un script que devolverá contenido.
  3. El servidor puede consultar una base de datos para recuperar el contenido almacenado.
  4. El servidor puede almacenar contenido en una base de datos.
  5. El servidor genera los datos, que se muestran en el navegador del cliente.

Tiene una variedad de opciones para el back-end, donde se ubicará el script del lado del servidor. Los lenguajes más populares para generar contenido de forma dinámica desde el lado del servidor son probablemente PHP, ASP y JSP, sin ningún orden en particular. Hay guerras religiosas enteras sobre cuál de estas es la más adecuada. (Y luego están Python y Perl, especialmente entre otros idiomas).

Personalmente, prefiero PHP. Por un lado, si opta por un servicio de alojamiento Apache, es casi seguro que PHP estará preinstalado y listo para usar de inmediato. Honestamente, ASP y JSP también son ampliamente compatibles.

En términos de usabilidad, PHP es probablemente el más fácil de aprender, y como proyecto de código abierto basado en la comunidad, decir que los recursos de PHP son abundantes sería insuficiente. PHP también tiene una biblioteca estándar gigante de funciones que hacen que una variedad de tareas sea muy simple.

ASP es en muchos aspectos similar a PHP, pero técnicamente es una creación patentada de Microsoft. Probablemente los recursos también sean suficientes para ASP. JSP también es como PHP, pero está basado en Java, lo que puede ser una ventaja ya que ya está familiarizado.

A continuación, necesitará algún tipo de base de datos que el script del servidor back-end consulta para obtener el contenido que enviará al cliente. Las bases de datos basadas en SQL, como MySQL, son muy maduras y existen desde hace siglos, y es casi seguro que tendrá soporte para estas en cualquier servidor web que valga la pena. PHP hace que sea muy fácil conectarse a bases de datos MySQL con funciones estándar, y ASP / JSP tampoco debería ser demasiado difícil.

Otra opción que se está volviendo muy de moda en estos días es NoSQL, un término general para bases de datos que usan modelos más flexibles de almacenamiento de contenido. En otras palabras, cuando utiliza una base de datos de estilo SQL tradicional, el formato de su información se define de manera muy rígida en términos de tipos de datos y longitudes, mientras que las bases de datos NoSQL permiten un diseño más simple y dinámico. (Esta es probablemente una mala explicación, pero definitivamente deberías buscar NoSQL como mínimo).

Cómo exactamente harías para codificar estas cosas es una búsqueda de Google; Existen numerosos tutoriales sobre cómo crear sistemas y scripts de administración de contenido PHP / ASP / JSP para el tipo de propósito que usted describe.

En cuanto al front-end (que, particularmente con estos lenguajes de servidor, se mezcla de manera fluida en el mismo archivo de código), una comprensión sólida de HTML5 y CSS3 es ciertamente importante. JavaScript también es muy útil para mejorar la experiencia del usuario.

Y finalmente, tienes que conectar tu sitio web juntos. Si termina con varios archivos de script del lado del servidor, simplemente puede hacer solicitudes POST y GET entre las distintas páginas para comunicar sus datos y parámetros.

Sin embargo, con la llegada de la Web 2.0, no todo requiere necesariamente una recarga de la página para mostrar el contenido. Las solicitudes de AJAX en JavaScript pueden PUBLICAR u OBTENER dinámicamente el contenido de otro script de servidor y colocar los resultados en una etiqueta HTML en particular en su página actual.


Lo que te he descrito aquí es una mirada de muy alto nivel a lo que podría pasar detrás de un sitio web como Craigslist. Sin embargo, es clave tener en cuenta que las principales aplicaciones web no necesariamente reinventan la rueda cada vez, lo que hace que todas estas capas (base de datos, servidor, marcado del lado del cliente, secuencias de comandos del lado del cliente) desde cero.

Existe una variedad de marcos y paradigmas de servidor que existen para organizar y mantener fácilmente aplicaciones web de alto rendimiento, especialmente la arquitectura MVC, que intenta separar la lógica de manejo de información del código de interacción del usuario.

Mientras tanto, en el lado del cliente, hay plantillas preconstruidas (CSS, en particular) y código de arranque (como Twitter Bootstrap) que le brindan algo en términos de estilos y temas para construir una interfaz. Para JavaScript del lado del cliente, plataformas como jQuery simplifican drásticamente la cantidad de código que se requiere para crear una página suficientemente interactiva para la web moderna.

Menciono todo esto incluso si no necesariamente usarás estas campanas y silbatos cuando hagas lo que sea que estés haciendo; Es importante tener en mente una visión más amplia de las tecnologías, ya que lo que hace ahora puede no ser necesariamente la mejor y más pragmática forma de hacerlo.

Eso es todo por ahora. Por favor, avíseme si algo no tiene sentido. Si está buscando algo que realmente se centre en cómo hacer esto, busque algo similar a Google para construir un sitio web con [insertar acrónimos aquí].

Front-end: HTML, CSS, JavaScript; puede usar un marco CSS que ofrece una cuadrícula para diseños de columna más fáciles para sus clasificados y diseños más fáciles en general para publicaciones.

Back-end: Cualquier lenguaje de programación con el marco asociado, una base de datos relacional (o NoSQL más adecuado, depende), Nginx / Apache.

Costo:

  • ~ $ 2 por nombre de dominio
  • ~ $ gratis para la implementación inicial que sirve poco tráfico
  • ~ $ 10 / mes si gana algo de tracción
  • ~ $ más ya que genera más tracción

No sería demasiado difícil construir algo como CL, aunque en última instancia depende del propósito para crearlo …

Vaya a http://themeforest.com y compre un tema que tenga toda la codificación básica ya realizada: (busque el “directorio”). Puede personalizar ese tema con su marca y características.

  • Directorio Portal WordPress Tema
  • Tema del directorio de WordPress – Listify
  • DirectoryS – Listado de tema de WordPress
  • Metrodir – Tema de WordPress para directorios y listados
  • Ultimate Directory Responsive Theme de WordPress
  • Spotter – Plantilla HTML de Directorio Universal

En dos palabras, FUENTE ABIERTA. Hay muchos proyectos de código abierto como Craigslist. Términos de Google como “clasificados de código abierto” y encontrará muchas respuestas. Algunos proyectos le proporcionarán el software de forma gratuita y asesoría a buen precio. Así que evalúa las opciones y échales un vistazo.

Es bueno aprender idiomas web y otras tecnologías similares para crear un sitio web similar desde cero en el futuro.

Sin embargo, si eres bueno con WordPress, puedes crear un Craiglist como sitio web en una semana.

Te sugiero que leas este artículo.
Cómo crear un Craiglist como sitio clasificado usando WordPress

Bueno, todavía tienes mucho que aprender aquí. Déjame darte un par de puntos de partida: aprende HTML, CSS, Javascript y MySQL. Puede comenzar a aprender los primeros 3 en http://www.codecademy.com y el último en http://www.sqlzoo.net

Utilice google y busque un clon de craigslist, asegúrese de ver la demostración funcional y un enlace de soporte antes de comprar, también busque en directorios de script como este Clone PHP Script | Clone PHP Scripts o Clone Scripts o Clone PHP Script

Realmente no necesita tener muchos conocimientos de programación con tantos scripts listos por ahí.

Sin embargo, recomiendo el Script de Clasificados Gratis – Clasificados abiertos, ya que es de código abierto (en caso de que necesite cambiar algo en su sitio web) se ve muy bien y fácil de usar.

También tienen una lista de preguntas frecuentes que pueden ayudarlo a conocer el software

¿Por qué escribirlo cuando simplemente puedes usarlo? Los 5 mejores scripts de Craigslist Clone: ​​los mejores clones de Craigslist disponibles o, al menos, utilizan su código para comenzar a aprender

Lo primero que haría, si fuera usted, sería buscar un producto que ya lo haga, y que sea económico o libre de ejecutar. Entonces, eso fue lo que hice y encontré esto en menos de un minuto:

Clon de Craigslist de código abierto

Probablemente hay otros por ahí. Craigslist es esencialmente un foro y un anonimizador de correo electrónico (no para minimizar el trabajo que Craigslist ha hecho, lo uso con bastante frecuencia).

Después de terminar de revisar todos los clones mencionados en estas respuestas, revise Heroku | Plataforma de aplicaciones en la nube para alojar su aplicación. Hay una cuenta gratuita donde puede ‘probarlo’.

Contrata a una empresa de terceros con oficinas en todas partes del mundo. Simplemente lo subcontratarán a la ubicación más barata y obtendrás la mejor oferta. Prueba http://www.ktini.com mi favorito personal. Me han brindado un buen servicio a un precio rentable.

More Interesting

Mi cliente me ha pedido que cree una aplicación personalizada para administrar su escuela. Esa aplicación debe sincronizar los datos con los servidores en línea siempre que Internet esté disponible. Sé algo de programación, un poco de PHP. ¿Qué lenguaje y herramientas pueden ayudarme a realizar la tarea rápidamente?

Cómo superar la barrera educativa en el desarrollo web

¿Cuál es la diferencia entre desarrollar aplicaciones web usando Java y PHP?

¿Cómo podemos clasificar una plataforma de servidor de aplicaciones para mantener nuestro entorno de producción? ¿En qué debería basarse?

¿Existen bases de datos distribuidas disponibles gratuitamente que estén diseñadas para escalar a miles de millones de usuarios en tiempo real? Si es así, ¿Que son?

¿Cuáles son los pros y los contras de las páginas web angulares estáticas que hablan del nivel de aplicación frente a un nivel web 'más gordo' con lógica de negocios incorporada?

¿Qué problemas técnicos se deben tener en cuenta para proyectos de desarrollo web a gran escala?

¿Cuáles son algunas buenas ideas de aplicaciones web para un proyecto final?

¿Qué es la lista de verificación de pruebas de penetración de aplicaciones web?

Cómo construir una gran aplicación web sin experiencia

¿Cuáles son las ventajas de SPA (aplicación de una sola página) sobre una aplicación web normal?

Las pruebas de penetración reportaron cero vulnerabilidades. ¿Esto significa que mi aplicación web es segura?

¿Cuáles son las mejores tecnologías para crear un sitio web grande (escalable)?

¿Cómo implementar sus aplicaciones web ahora mismo? ¿Cuál es su idea de implementación automatizada?

¿Cuál es el mejor y más fácil software para gráficos de Gantt?