Importante: Hice este post hace más de 5 años para aquellos que querían empezar con desarrollo en PHP/MySQL; pero ya está bastante desactualizado. Si quieren instalarse un sistema de testing, les recomiendo usar el último Ubuntu y cuando lo instalen seleccionar las mismas opciones para servidor LAMP, FTP, MySQL.



Bueno, les voy a explicar como montar su propio servidor casero para hostear páginas web propias, de testeo o para sus amigos.

Existen 2 formas de instalar este tipo de servidores, la complicada, y la extra-fácil, les voy a explicar la extra-fácil porque hoy en día nadie se quiere complicar.


Seccion 1. Servidor Web LAMP (Linux/Apache/MySQL/PHP)

Para Linux, que es uno de los sistemas más usados para Webs, lo que necesitamos es instalar una distro de linux. Si ya tienen una instalada, el proceso es distinto a este, pero muy parecido.

Para hacerlo bieeeen fácil para todos, vamos a trabajar con Ubuntu Server. El Ubuntu, por más de lo que creen, es un sistema bastante robusto porque está basado en Debian. Puede no ser tan profesional como tal vez lo sea su padre, Debian, o sistemas similares como CentOS / Red Hat, pero es muy bueno para empezar, por su simpleza y facilidad de configurar las cosas.

Primero: Se descargan el ISO de Ubuntu Server, en este ejemplo vamos a usar la 8.04.1 (hardy); se lo pueden bajar DD desde este link: http://www.ubuntu.com/getubuntu/download-server. Las versiones van de esta forma: año (2008 -> 8) y mes (abril -> 04), a veces con un agregado en actualizaciones (eg 2008/04 update 1 = 8.04.1); pueden bajar la más nueva si quieren, no difiere en gran manera (puede que alguna opción no sea necesaria o esté en otro lugar)

Segundo: Elijen la PC que van a usar como servidor (debería estar 24hs encendida, pero no requiere tener monitor, teclado o mouse; sólo para la instalación se necesita). Bootean la misma desde el CD Rom de Ubuntu, y les va a aparecer un menú con un par de opciones. Con las eFes del teclado podemos elegir el idioma del instalador, y el idioma del teclado; por lo general lo elije por defecto; y una vez está pasamos a Instalar.

Tercero: La instalación en sí; es bastante simple, casi todo se puede saltear al siguiente. Si tienen Windows y Linux en la misma PC pueden usar el particionado guiado que les permite mantener Windows y usar el resto para Linux, o automáticamente cambiar el tamaño de las particiones para que entren los dos. Si saben de Linux, pueden hacer un particionado propio, sino, no importa, no es algo esencial por el momento. Una vez lleguen al último paso les preguntará qué servidores quieren instalar, tienen que tildar LAMP, FTP Server, MySQL Server y si quieren alguno más, es a gusto.

Cuarto: Esperan... e inician su equipo por primera vez. Una vez lo inicien ya está listo.


Seccion 2. Servidor Web WAMP (Windows/Apache/MySQL/PHP)

En sí el Apache es nativo en Linux, pero es posible montar un servidor en Windows que funcione, medianamente, estable. Para esto, necesitan tener un CD de Windows "Original" (digamos), en el cual instalar su servidor.

Primero: Descargan el programa que van a usar, existen 2 que son los más comunes AppServ y EasyPHP. El primero es mejor porque es más liviano y más estable; el segundo tiene una administración más amigable, pero es más inestable.

Segundo: La instalación es bastante lineal, les pedirá la clave para MySQL y la ruta donde quieren instalar el programa. Tengan en cuenta que la ruta del programa contiene al directorio WWW adonde están las webs.


Seccion 3. Montando las Webs

En Linux el directorio por defecto para las webs es /var/www (pueden borrar la carpeta y poner un link a otro lado si quieren). En Windows por defecto tienen que buscar la carpeta www que está dentro de la carpeta de instalación de su script; si instalaron AppServ, seguramente sea C:AppServwww

Creen un archivo que se llame index.html o index.php (si programan en php) y éste será el primero que se vea al entrar al sitio. Por ahora, pueden poner cualquier cosa en el archivo, es para probar nada más.

Una vez está listo, entran a http://localhost (desde un navegador en la PC servidor) o a http://192.168.0.x (reemplazando por la IP de RED, si estan en una red). Y tienen que ver ese Index (sino asegurense que el programa está iniciado)!

Para que funcione desde internet, necesitan una IP fija, pero como esto cuesta platita, podemos usar DynDNS para tener un host dinámico que apunte a nuestra casa.


Seccion 4. Abriendo el servidor al público

En el caso de Ubuntu, no necesitan hacer nada, en el caso de Windows, se complica un poco, porque tienen que editar el archivo de configuración en el Apache (comúnmente httpd.conf) y ponerle que escuche en el puerto 80 (Listen 80) y revisar que NO diga localhost, sino que diga 0.0.0.0:80 o directamente *:80 para que acepte conexiones desde afuera y desde adentro de la Red también, porque sino va a funcionar solo localmente. En muchas ocasiones esto viene comentado en el mismo archivo así que puede que nada más tengan que sacar el comentario.

Una vez está listo eso, vamos a http://www.dyndns.com y hacen click en "Create Account". Completen los pasos, y validensé haciendo click en el mail que les mandan. Una vez está listo, se loguean a su cuenta.

NOTA: DynDNS también se puede usar si quieren montar otro tipo de servidores (un servidor de CS o Winning, FTP Server, repositorio de linux, etcétera).

En "My Services" tienen una opción que dice Hosts. Ahí tienen que crear uno nuevo clickeando Add Hostname. Eligen el nombre que quieren, tildan "Host with IP" y abajo ponen su IP pública (hay un link de "autodetect" que pueden usar). El email lo dejan como está y ponen "Create".

Ahora en unos minutos ya van a tener el dominio apuntando a su PC y funcionando. Como no tienen IP fija, hay que editar la IP a cada rato, pero, si tienen un Router esto se configura fácil desde ahí y el mismo router configura la IP cada vez que se cambie. Si no tienen un router, o no tienen esta opción, pueden bajar uno de los clientes que auto gestionan las IPs y la actualizan, desde aca: https://www.dyndns.com/support/clients/

IMPORTANTE: Si tienen un router para la red, necesitan ir a la configuración del mismo y en la parte de Port Forwarding, redireccionar el puerto 80 a la PC que tenga el acceso de servidor si quieren acceder remotamente a su servidor Web. Configurar el ruteo para un FTP Server es un poco más complejo, asi que capaz en otro tutorial lo haga si quieren, pero en sí lo que hay que hacer es rutear el puerto 21 y reconfigurar los puertos pasivos de FTP.


Si les gustó el tuto o les pareció útil, avísenme y comenten así les hago algún otro