sábado, diciembre 22, 2012

Cómo cambiar la carpeta www de Apache a una carpetas externas en home

Desde hace tiempo estoy intrigado como cambiar la ubicación de la carpeta www de apache para una ubicación mas fácil de encontrar y para tener una copia de seguridad, ya que si hay un problema con el sistema operativo, como por ejemplo quieres reinstalar desde cero, y olvidas lo que tienes en www lo vas a perder y con estos tiempos que puedes tener un disco duro en la nube, es más fácil de tener una copia de seguridad.

Yo tengo una cuenta en Dropbox entonces allí es donde yo quiero tener mi carpeta de www o con un nombre más bonito lo voy a llamar "hotDocs".

Entonces manos a la obra, por hacer todo más fácil voy a utilizar el terminal, pero hay que escribir un poco más :

1. Cuando abrimos el terminal escribimos ls para ver si esta la carpeta de dropbox, o vamos a la ubicación donde la hemos configurado y modificamos los permisos con la siguiente línea de codigo:

sudo chmod 777 Dropbox
Aquí va pedir la contraseña del sistemas y listo.

2.  Crear la carpeta "hotDocs" la cual debemos entrar a dropbox asi;

cd Dropbox

y luego creamos la carpeta

mkdir hotDocs
sudo chmod 777 hotDocs
/

y vamos a crear un archivo html llamado index.html con el siguiente mensaje "Estes es mi servidor local en mi carpeta dropbox"

cd hotDocs
echo 'Estes es mi servidor local en mi carpeta dropbox' > index.html


3. Ahora vamos a personalizar la dirección local en el archivo hosts. Voy a utilizar el editor de Kubuntu que es kate, pero se pueden utilizar vim, gedit en ubuntu u otros:

sudo kate /etc/hosts

Aquí se abre el editor de texto y solamente añadimos el nombre que queramos para colocar en el navegardo, por ejemplo miservidor

127.0.0.1 localhost miservidor

Guardamos y cerramos el editor de texto.

4. En este momento vamos a irnos a la carpeta de apache2 llamada sites-available y hacemos una copia del archivo default:

sudo cp default miservidor

y entramos al archivo miservidor:

sudo kate miservidor

y ahora hay que modificar o añadir los textes en negrilla

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName miservidor

    DocumentRoot /home/nombredelusuario/Dropbox/hotDocs
    <Directory />
       Options FollowSymLinks
      AllowOverride None
    </Directory>
    <Directory /home/nombredelusuario/Dropbox/hotDocs/>
      Options Indexes FollowSymLinks MultiViews
       AllowOverride All
       Order allow,deny
       allow from all
       Require all granted
    </Directory>

guardar y cerrar el editor de texto.

Ahora hay que activar el sitio que hemos creado

sudo a2ensite miservidor

y si esta bien configurado el debe salir el siguiente mensaje para recargar apache

sudo service apache2 reload

finalmente para saber si esta funcionando debe salir la frase que escribimos en el index.html introduciendo la siguiente dirección en el navegador:

http://miservidor

En las siguientes paginas puede encontrar más información interesante que yo posiblemente olvide:

Configuración de Apache en Linux con carpetas externas
How to Configure Apache Web Server on Linux