Alejandrox

Blog personal de Alejandro Meroño Hernández

Montar un servidor web casero con IP dinámica (I)  

apache_server.JPG

Un servidor web, tal y como podemos leer en la Wikipedia, es un programa que implementa el protocolo HTTP (hypertext transfer protocol). Este protocolo está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.

En este artículo trataré de explicar, de la forma más sencilla posible, cómo podemos montar un servidor casero en nuestro ordenador para tener alojado nuestro sitio web y acceder a él desde cualquier lugar, independientemente de si hemos contratado o no un dominio o si tenemos o no una IP dinámica (más adelante veremos que significa eso).

Además, veremos como montar el servidor casero en Windows y Linux (Ubuntu) para que los usuarios de ambos sistemas operativos puedan hacerlo sin complicaciones.

Instalación del servidor web en Ubuntu

Para instalar nuestro servidor web en Ubuntu utilizaremos XAMPP, que es un paquete que incluye Apache, el servidor web más utilizado en la actualidad, un servidor de bases de datos llamado MySQL y el intérprete del lenguaje de programación PHP. Estos dos últimos los necesitaremos en el caso de que en nuestro servidor alojemos páginas web dinámicas que hagan uso del servidor de bases de datos, o en el caso de que en nuestras páginas queramos incluir scripts escritos en PHP. Para descargar el paquete XAMPP vamos a la siguiente página, XAMPP, y hacemos clic sobre el enlace “XAMPP Linux”

xampp1.jpg

A continuación copiamos el paquete que hemos descargado al directorio /opt. Abrimos el terminal (Aplicaciones/Accesorios/Terminal) y descomprimimos el fichero:

  • cd /opt
  • sudo tar -zxvf xampp-linux-1.6.6.tar.gz

Hecho esto, tan solo nos quedará iniciar cada uno de los servidores instalados escribiendo la siguiente orden en el terminal:

  • sudo /opt/lampp/lampp start

En el terminal deben aparecer las siguientes líneas que indican que XAMPP se ha iniciado correctamente:

  • XAMPP: Starting Apache with SSL (and PHP5)…
  • XAMPP: Starting MySQL…
  • XAMPP: Starting ProFTPD…
  • XAMPP for Linux started…

Ahora podemos probar el servidor web Apache abriendo el navegador y escribiendo http://localhost en la barra de direcciones. Debe aparecer una página como la siguiente.

xamp1.png

Una vez que hemos comprobado que el servidor está instalado y funciona correctamente, tendremos que copiar nuestras páginas web al directorio raíz del servidor web, que se encuentra en /opt/lampp/htdocs.

Para hacer pruebas, lo que haremos a continuación será modificar el fichero index.html que se encuentra en ese directorio. Hay diversas formas de hacerlo, una de ellas es abriendo el terminal y escribiendo:

  • sudo gedit /opt/lampp/htdocs/index.html

Vamos a crear una página muy sencilla que simplemente muestre el texto “Hola, me llamo Alejandro”. Así pues, borramos todo el contenido del archivo y escribimos en él el siguiente contenido.

servidor_web2.png

Guardamos los cambios realizados en el fichero, abrimos de nuevo el navegador y escribimos: http://localhost (también podemos poner http://ip_del_ordenador). Tendremos que ver una página como la siguiente.

servidor_web3.png

Instalación del servidor web en Windows

En Windows haremos uso del paquete WAMP que, como en el caso de XAMPP, contiene el servidor de páginas web Apache, el servidor de bases de datos MySQL y el intérprete de PHP. En primer lugar accedemos a la página http://www.wampserver.com/en/ y hacemos clic sobre el enlace “Download”.

imagen-1.png

Aparecerá la siguiente página en la que tendremos que hacer clic de nuevo sobre Download.

wamp2.png

Una vez descargado, lo instalaremos haciendo doble clic sobre el paquete que hemos bajado para que comience el proceso de instalación.

wamp3.png

En uno de los pasos del asistente de instalación tendremos que escribir el directorio en el que instalaremos wamp (podemos dejar el que viene escrito por defecto).

wamp4.png

En la siguiente ventana tendremos que seleccionar el navegador de Internet predeterminado (podemos dejar como predeterminado Internet Explorer)

wamp5.png

Es posible que durante el proceso de instalación veamos la siguiente ventana si tenemos activado el cortafuegos de Windows.

wamp6.png

Tendremos que hacer clic sobre el botón “Desbloquear” para que podamos acceder al servidor web en Windows.

En otra de las ventanas que aparecen en el asistente de instalación, tendremos que escribir nuestra dirección de correo y el nombre del servidor de correo saliente que usaremos para mandar mensajes de correo. Esto solo es necesario en el caso de que hagamos uso de la función mail() de PHP.

wamp7.png

Una vez terminado el proceso de instalación, aparecerá en la barra de tareas un nuevo icono a través del cual podremos arrancar o parar los distintos servidores instalados.

wamp8.jpg

Para iniciar cada uno de los servidores haremos clic con el botón derecho del ratón sobre el icono y después seleccionaremos “Start all services”.

wamp9.jpg

Para comprobar que el servidor se ha instalado e iniciado correctamente, abriremos cualquier navegador de Internet que tengamos en nuestro ordenador y escribiremos http://localhost. Tendremos que ver una página como la siguiente.

wamp10.png

Una vez que hemos comprobado que el servidor está instalado y funciona correctamente, tendremos que los archivos de nuestra página web al directorio raíz del servidor, que se encuentra en c:/wamp/www (si no hemos cambiado el directorio por defecto durante la instalación de wamp).

Como en el caso de Ubuntu, podemos probrar a crear una sencilla página web llamada index.html y copiarla al directorio c:/wamp/www para mostrarla posteriormente en el navegador.

Hasta aquí la primera parte del artículo en la que hemos visto cómo instalar un servidor web en Ubuntu y Windows. En la segunda parte del artículo veremos cómo podremos acceder al servidor o visualizar las páginas de nuestra web desde cualquier ordenador con conexión a Internet. Para ello tendremos que abrir los puertos de nuestro router y utilizar el servicio no-ip si nuestra dirección IP es dinámica.

Popularity: 8% [?]


Otras entradas que te pueden interesar



Esta entrada tiene

13 comentarios

Escrito por Alejandrox

Abril 22nd, 2008 at 5:50 pm

13 comentarios en 'Montar un servidor web casero con IP dinámica (I)'

Suscríbete a comentarios con RSS o TrackBack en 'Montar un servidor web casero con IP dinámica (I)'.

  1. […] Segunda parte del artículo “Montar un servidor web casero con IP dinámica“ […]

  2. Hola. Primero quiero felicitarte por este sitio. Lo tengo en mi Del.icio.us y lo consulto siempre (vía RSS también).

    He configurado varias veces Apache en Windows pero nunca en Linux. Para que otras personas puedan ver mis archivos HTML, mi notebook debe estar encendido todo el tiempo y con el Apache inicializado, correcto?

    Otra duda es cómo darle acceso a determinada carpeta a otras personas, como amigos y familiares, para que rescaten desde mi equipo algún archivo.

    Saludos.

    Chuqui

    15 Jun 08 at 9:03 am

  3. Dejo el link de mi web con servidor casero y linux…

    http://www.heliopolis.tk

    Moan

    24 Ago 08 at 12:52 am

  4. Saludos, primero agradecerte la buena voluntad de escribir este tutorial. Cuando pongo en terminal ” sudo /opt/lampp/lampp start” me da el siguiente error:

    sudo: unable to resolve host mario-desktop
    Starting XAMPP for Linux 1.6.8a…
    XAMPP: Starting Apache with SSL (and PHP5)…
    XAMPP: Error 1! Couldn’t start Apache!
    XAMPP: Starting diagnose…
    XAMPP: Sorry, I’ve no idea what’s going wrong.
    XAMPP: Please contact our forum http://www.apachefriends.org/f/
    XAMPP: Starting MySQL…
    Warning: World-writable config file ‘/opt/lampp/etc/my.cnf’ is ignored
    Warning: World-writable config file ‘/opt/lampp/etc/my.cnf’ is ignored
    XAMPP: Starting ProFTPD…
    XAMPP: - warning: unable to determine IP address of ‘mario-desktop’
    - error: no valid servers configured
    - Fatal: error processing configuration file ‘/opt/lampp/etc/proftpd.conf’
    XAMPP: Error 1! Couln’t start ProFTPD!
    XAMPP for Linux started.

    Por favor, necesito que me des ayuda lo antes posible porque tengo ya mes y medio de tratar de instalar Moodle en Ubuntu 8.04 en 3 máquinas distintas y no he podido, ni siquiera con la ayuda de 2 ingenieros en sistemas lo he conseguido. Dime que es lo que está mal, será que es imposible con el Ubuntu 8.04?

    Mario

    14 Oct 08 at 5:48 am

  5. Hola Mario. La solución es muy fácil. Edita el fichero /etc/hosts y asegúrate de que aparecen las dos siguientes líneas:

    127.0.0.1 localhost nombre_maquina
    127.0.1.1 nombre_maquina

    nombre_maquina es el nombre de tu máquina.

    Alejandrox

    14 Oct 08 at 6:55 pm

  6. Alejandrox, hice lo que me sugieres y ahora me da menos errores:

    Starting XAMPP for Linux 1.6.8a…
    XAMPP: Starting Apache with SSL (and PHP5)…
    XAMPP: Error 1! Couldn’t start Apache!
    XAMPP: Starting diagnose…
    XAMPP: Sorry, I’ve no idea what’s going wrong.
    XAMPP: Please contact our forum http://www.apachefriends.org/f/
    XAMPP: Starting MySQL…
    XAMPP: Starting ProFTPD…
    XAMPP for Linux started.

    Pero cuando escribo en el navegador http://localhost me dice que si quiero abrir o guardar el archivo phtml

    Te aseguro que si logro que mi PC sea accesible desde la red mando una carta al Vaticano para que te beatifiquen, un santo legítimo ;), saludos y espero tu respuesta…

    Mario

    14 Oct 08 at 7:16 pm

  7. Hola de nuevo Mario. Es posible que ya tengas instalada una versión anterior de Apache y por eso no te deja iniciar el servidor web.

    ¿Instalaste Apache y después instalastes XAMPP? Si es así prueba a desinstalar Apache. Escribe:

    sudo apt-get remove apache2

    Y después inicias de nuevo XAMPP a ver si funciona.

    Alejandrox

    14 Oct 08 at 8:54 pm

  8. Alejandrox, sos un genio. Desinstalé el Apache2 y ahora Xampp corre normal sin ningún problema. Miles de gracias por tu ayuda y por este genial tutorial.

    Mario

    15 Oct 08 at 12:25 am

  9. Alejandrox, soy yo de nuevo, estaba siguiendo un tutorial tuyo sobre la instalación de Moodle pero no veo el link, no sé si lo quitaste. De todas maneras quería preguntarte acerca de un error que me da durante la configuración de Moodle, me dice que no puede crear la base de datos “moodle” porque ya existe y en la página siguiente donde pide el usuario y la contraseña para mysql también me da un error y no me permite seguir.

    Mario

    15 Oct 08 at 10:28 am

  10. Alejandrox, despues de mucho luchar y no dormir durante 2 días encontré que el paquete mysql-server-5.0 está dañado y si alguien lo instala no va poder manejar la base de datos de mysql.
    En su lugar bajé una versión antigua de mysql-server en .rpm y la pasé a .deb con alien. Funcionó de maravilla, ya tengo moodle instalado pero todavía me falta abrir el puerto 80 para que sea accesible desde internet, pero esto si parece que es casi imposible. Probé reconfigurando el firewall de Ubuntu, el ufw pero nada de nada. Quisiera saber si es posible abrir el puerto o si definitivamente es imposible. Gracias…

    Mario

    15 Oct 08 at 8:12 pm

  11. Hola.
    Interesante guía, estoy tratando de implementarla en mi trabajo. Mi caso es el siguiente: tengo instalado el Ubuntu 7.10 en el cual está instalado un servidor FTP, la verdad es una belleza porque es muy estable y no falló para nada en todo este tiempo. Quiero montar en esta máquina mi página web, pero no quiero arriesgar a arruinar o afectar al FTP porque es una herramienta de uso diario para intercambio de audio y otros datos entre varias ciudades. Mi pregunta es ¿tendré algunos percances con los puertos que usan el ftp y el servidor web?
    Gracias

    VICHO7

    16 Oct 08 at 11:17 pm

  12. Por si acaso, tengo ip fija y mi equipo es un Pentiun 4 2,9Ghz, 512Megas Ram y 80 gigas HD.

    VICHO7

    16 Oct 08 at 11:20 pm

  13. Además este equipo funciona como router para distribuir acceso a Internet a 15 máquinas a partir de una ip fija.

    VICHO7

    16 Oct 08 at 11:21 pm

Deja un comentario