Servidor Web casero??

Tema en 'Programación & Programación Web' iniciado por hardcase90, 26 Feb 2014.

  1. hardcase90

    hardcase90 Usuario Nuevo nvl. 1
    262/325

    Registrado:
    27 Oct 2011
    Mensajes:
    375
    Me Gusta recibidos:
    4
    Buenas...he leído varios temas por aquí, pero no he dado con lo que ando buscando.

    Quiero crear mi propia página web desde cero. Soy autodidacta y he estado leyendo varios manuales de html y css, y a decir verdad en una semana y con harta dedicación, he aprendido bastante.

    Para complementar lo aprendido, la próxima semana empezaré con algo de javascript y php, me gusta ir de a poco y siempre repasar todo, así que no creo que eso lo aprenda en tan poco tiempo. Es por eso que me gustaría saber un poco más, así bien resumido, lo que necesitaré después, cuando ya tenga la página hecha y quiera subirla a internet, porque en cuanto a esa estructura creo que ando algo perdido, y por ahí he visto que se habla bastante del "servidor web casero".

    Puede este servidor darme mi propio dominio?? o igual tendré que pagar a un host?? recalco que no deseo utilizar ningún cms, sino crear la página "a fierro pelao".

    Sé que puede ser medio enredado a lo que quiero ir, pero necesito algo de ayuda para entender lo que debo hacer cuando ya tenga mi página creada, y si hay alguna manera de no pagar a nadie por mantener dicha página en la web.

    Saludos
     
  2. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Se entiende la idea.

    Primero separemos el Servidor de la Página, el servidor es el computador donde se hospeda tu página y puede ser accedida remotamente.

    Pondré en negrita las palabras que debes investigar para que tengas más conocimientos respecto del tema:

    Hablemos de la página: Un sitio web funciona en forma general con la siguiente secuencia de pasos:

    1.- El usuario, usando un explorador (Browser, o "Cliente") como Firefox, Google Chrome o Internet Explorer. Envia una dirección URL, que es la que aparece arríba (http://www.portalnet.cl/comunidad/programacion-programacion-web.886/1122424-servidor-web-casero.html). Adicionalmente el cliente manda otra información pero que por ahora la podemos saltar. Solo con la URL podemos general una página determinada y distinta a las demás.

    2.- La URL recibida es básicamente una clave que la página puede procesar libremente usando un lenguaje de programación de servidor como PHP o ASP, no profundizaré en como funciona esto porque queda a criterio de cada programador el como respoder a cada consulta. Es importante entender esto porque no existe ninguna relación intrínseca entre la URL y el contenido que se muestra y el programador es libre de hacer cualquier cosa. Incluso un programador puede ignorar la URL completamente (por ejemplo si el usuario está baneado)

    Ejemplo: Supongamos que un usuario pide la página http://www.sitio.cl/galletas. En este caso la clave es "galletas", también conocida como URI, con esa palabra yo puedo hacer que el usuario vea una imagen de una galleta, una página con imágenes de galletas o un video de un koala bailando. Sin embargo es recomendable que la URI tenga sentido de la siguiente forma:

    Para ver una imagen de la galleta: http://www.sitio.cl/galleta.jpg (.jpg es un formato de imagen)
    Para ver una página con imagenes de varias galletas: http://www.sitio.cl/galeria/galletas
    Para ver un video de koala bailando: http://www.sitio.cl/videos/koala

    También hay sitios que utilizan claves numéricas, como por ejemplo http://www.sitio.cl/fotos/1231, Aquí la URI es fotos/1231

    3.- Según la URI recibida, el servidor , usando el lenguaje de programación ,debe entregar un documento html con un estandar determinado (que puede ser xhtml, xhtml 2, html 4 o html 5). Este documento tiene escritura legible por el ser humano y su código es interpretado por el browser para generar la página que estás viendo (así como en matrix). De este modo, si quieres mostrar una galería de imágenes de galletas, no basta con devolver las URL de las imágenes solas, deben ir dentro de un documento html con las etiquetas adecuadas.

    4.- Se contruyó el html según la URL recibida, pero falta algo. una página html así sin más es aburrida porque carece de los colores, imágenes, tamaños de letra y ubicacion de los componentes descritos en el html. Para ello se crean hojas de estilo CSS. Estas hojas indican toda la parte visual (colores, tamaños y estilos de letra, ubicación del contenido, etc).

    5.- Opcionalmente, se puede usar un lenguaje de programación de cliente como Javascript para mejorar la experiencia de navegación. Básicamente es lo mismo que php pero tiene una gran diferencia: Javascript, al ser del lado del cliente, utiliza el procesador del computador del usario, PHP utiliza el procesador del servidor. Códigos PHP mal escritos, muy intensivos y/o requeridos por una gran cantidad de usuarios pueden saturar el servidor dejándolo inaccesible. Pero la mayoría de los procesos esenciales de la construcción de la página solo se pueden hacer por el lado del servidor.

    Hablamos del servidor:

    Para que otras personas accedan a tu página, siempre es mejor contratar un hosting. Hoy en día son barátos, por $25.000 anual puedes conseguirte todo lo necesario para empezar, es cosa de imprimir los documentos que te dicen e ir a pagar a servipag, tan fácil como eso.

    Los servidores caseros solo son usado como medios de prueba de tu página antes de estrenarla al público. Un servidor web no es más que un computador con un programa instalado que permita responder peticiones remotas y puede ser el que estás usando ahora mismo, por ende puedes instalar en tu computador programas gratis como el EasyPHP que viene con todo listo para crear tu página de forma local.

    Este programa también viene con SQL, que es una buena forma de almacenar datos y apoya enormemente a PHP. ¿Que datos?, los que tu creas que son necesarios (contenidos, claves de usarios, páginas completas, tablas de informacion, etc).

    Recomendaciónes generales:

    0.- Tener buena herramientas:

    Servidor web: EasyPHP (recomendado) o Xampp

    Editor PHP: Notepad++ (simple y liviano pero con menos funcionalidad) o Netbeans (Pesado y más lento y requiere más configuración pero permite manejar proyectos de mejor forma y tiene intellisense tanto para las variables de PHP como para las definidas por el usaurio

    Editor CSS/HTML: Notepad++ u otro, no se requiere mucho al respecto

    Editor de imágenes: Photoshop, Photofiltre Studio u otro, el que más te guste.

    Programa FTP (para subir tus archivos al servidor remoto para cuando quieras subir tu página terminada), yo uso un plugin del Notepad++, también el Netbeans tiene FTP incluido.

    1.- primero aprender PHP, es el corazón de todo este asunto, y apréndelo de forma general, no solo como página web. Debes aprender a hacer cálculos matemáticos, procesar texto, administrar archivos, conectar bases de datos, manipular imágenes y otros documentos, etc. Entiendiendo como funcionan las variables, tipos de datos, funciones y OOP. Busca un buen libro y ejecútalo entero sin saltarte ni una página. Debes convertirte en un experto en este tema si o si.

    1.5.- Esté deberia ir dentro del 1 pero lo pongo a parte y destacado porque es sumamente importante: aprender seguridad en PHP para evitar que te hackeen tus scripts, cuando tu página sea accesible al público, cada script que publicas, por pequeño que sea, puede ser usado por el usuario para tomar el control de tu sitio y hacer cosas malas (borrar el sitio es lo más inofensivo que te pueden hacer). Programadores avanzados desarrollan sus propias Clases de seguridad para evitar que esto suceda.

    2.- aprender HTML, solo después de manejar fluidamente PHP, sobre todo en procesamiento de téxto, investiga como funciona un documento html (es muchísimo más fácil que PHP) y con ambos conocimientos deberás usar tus habilidades en PHP para construir esa sintaxis. Si has adquirido las habilidades de PHP que mencioné entonces te debería ser fácil encontrar tu propia forma de hacerlo.

    3.- aprender los demás aspectos: CSS, Javascript, formatos de imágenes, etc.

    ---Hasta aquí ya estás capacitado para hacer un sitio web básico/intermedio incluso sin saber SQL.---

    3.- aprender SQL, no es una herramienta esencial pero potenciará mucho tu produción de páginas y te permitirá manejar grandes volúmenes de datos para sitios grandes, ojo que también existen otras tecnologías como SQLite o XML pero el SQL que viene con el Servidor es el estandar defacto, con sus virtudes y defectos.

    4.- Seguir cultirizándote, quedan muchos temas en el tintero: Benchmarking, Accesibilidad, Loggin, Unit Testing, Estadísticas, uso o creación de Frameworks, etc etc etc. Nunca se termina de aprender.

    Espero te haya ayudado con esto. Saludos.
     
  3. hardcase90

    hardcase90 Usuario Nuevo nvl. 1
    17/41

    Registrado:
    27 Oct 2011
    Mensajes:
    375
    Me Gusta recibidos:
    4
    Gracias por la respuesta. Me quedó un poco más clara la película
     
  4. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Como te digo, son muchos los componentes que intervienen, es bastante dificil atrapar todo a la primera, te recomiendo que empieces a programar y cuando tengas dudas puntuales las posteas y te ayudamos a resolverlas.

    Saludos.
     
  5. dsignio

    dsignio Usuario Nuevo nvl. 1
    17/41

    Registrado:
    22 Ago 2012
    Mensajes:
    514
    Me Gusta recibidos:
    2
    Primero que todo como ya te respondieron, debes separar lo que es servido casero con el desarrollo del sitio...un servidor casero se puede configurar con un nombre (blabla.cl) pero este solo será visible dentro de una red (también puedes acceder por ip) pero para que lo puedan ver desde fuera de la red debes configurar el router con una ip estatica (creo) para que registres esa ip en nic.cl (creo que hay servicios que son para que configures un servidor casero, onda que puedas entrar desde fuera de la red por ip pero igual debes configurar el router) en eso te puedo ayudar en relación al servidor.

    En relación a php y javascript tienes mucha pega y mucho que aprender ya que si no has programado te costará formar una logica.

    Si necesitas ayuda en php no dudes en preguntarme :)
     
    #5 dsignio, 3 Mar 2014
    Última edición: 3 Mar 2014
  6. fearman22

    fearman22 Super Moderador
    Super Moderador
    262/325

    Registrado:
    8 Oct 2008
    Mensajes:
    16.901
    Me Gusta recibidos:
    991
    :crazy2:
     
  7. hardcase90

    hardcase90 Usuario Nuevo nvl. 1
    17/41

    Registrado:
    27 Oct 2011
    Mensajes:
    375
    Me Gusta recibidos:
    4
    Programo ya desde hace algunos años, así que no creo que tenga problema en eso, sólo que nunca me había adentrado en el tema web, es algo completamente ajeno a mis conocimientos.

    No entiendo a este compadre lo que quizo expresar, algunas palabras a veces no vienen mal :no:
     
  8. dsignio

    dsignio Usuario Nuevo nvl. 1
    17/41

    Registrado:
    22 Ago 2012
    Mensajes:
    514
    Me Gusta recibidos:
    2
    xD no te alteres, lo que quiere expresar fearman22 (creo jajaj) es que quedó loco con la primera explicación de El Fin...igual fue como cuatico cuando vi la media respuesta :zippyuy:
     
  9. fearman22

    fearman22 Super Moderador
    Super Moderador
    262/325

    Registrado:
    8 Oct 2008
    Mensajes:
    16.901
    Me Gusta recibidos:
    991
    ajaj, quise decir que quede mareado con todo esto!!! no lo tomes a mal!!
     
  10. hardcase90

    hardcase90 Usuario Nuevo nvl. 1
    17/41

    Registrado:
    27 Oct 2011
    Mensajes:
    375
    Me Gusta recibidos:
    4
    Ok...gracias por aclararlo xD
     
  11. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Jaja es que vale la pena pegarse la explayada cuando aparece alguien que quiere aprender en vez de los muchos que llegan preguntando cual framework es mejor.

    Saludos.