Con esto de la computación en la nube(Cloud Computing) el mundo del software libre , de mano de KDE, ha estado desarrollando una herramienta para manejar archivos desde internet algo así como DropBox aunque la herramienta se desarrolla desde hace poco, promete ser una buena alternatiba.
Yo probé la version 1.2 de owncloud cuando recién salió, pero no me gustó mucho. Actualmente la versión 2 está en estado beta y sí que promete a sido lanzada en su versión estable el 11 de octubre del 2011 . Lo he instalado en mi web y funciona simplemente perfecto!!.Para poder instalar owncloud en tu servidor web necesitas:
- Servidor web HTTP (apache por ejemplo :P)
- Un intérprete PHP
Instalación
Los pasos de instalación se detallan en http://owncloud.org/install/ pero bueno, aqui un vistaso rápido:
- Debes descargar ownlcoud (versión de desarrollo) desde http://owncloud.org/releases/owncloud-2.0.1.tar.bz2.
- Debes extraer el comprimido y subirlo a tu servidor web. para esto debes usar FTP o si lo quieres probar en tu servidor local (localhost) simplemente descomprímelo en la carpeta de tu servidor, en algunas distribuciones linux la carpeta es /var/www/localhost.
- Cambiar los permisos, si haz copiado y pegado en tu propio servidor local debes cambiar al propietario de los archivos usando el comando:
chown -R www-data:www-data owncloud/
Si lo haz subido mediante FTP a tu servidor remoto no necesitarás cambiarlo,ya que, el propietario de los archivos es el usuario con el que te logueaste al FTP.
Debes abrir con el navegador web la ruta del directorio ownlcoud finalmente rellenas los datos que te solicita para continuar la instalación. En mi caso la ruta es http://llullutuqo.me/owncloud
, si lo hiciste en tu servidor local deberia funcionar con http://localhost/owncloud.
- Finalmente se recomienda
El usuario que creas será del tipo administrador, con el podrás crear usuario, configurar algunase cosas, etc. Finalmente tenemos owncloud funcionando en nuestro propio servidor!!!!!
Ahora lo único que falta es configurar tu gestor de archivos para que puedas acceder a owncloud mediante WebDAV, puedes encontrar mayor información de cómo hacerlo dando clic aquí.
WebDAV y PHP CGI.
Una de las cosas que me parece interesante de este proyecto es el uso del protocolo webdav, a groso modo, esto permite acceder a los archivos remotos desde el explorador de archivos de tu sistema operativo. Si estás interesado sobre esto puedes seguir el leyendo sobre WebDAV aquí.
Cuando probé el acceso con webDAV a mi serivdor owncloud local (localhost) funcionaba de maravillas.... uhhhhhh me sentía el dios del universo(:P), pero simplemente cuando instalé owncloud en mi servidor remoto (llullutuqo.me) webDAV no funcionaba de ninguna manera, por más que pusiera la contraseña correcta siempre me la volvia a solicitar.... ufffff que frustración, el segundo problema no lo noté muy bien al principio, lo llegué a deducir mientras investigaba:
- Problema 1: Las cabeceras de autenticación HTTP no funcionan de manera esperada con PHP en modo CGI
- Problema 2: Cuando se intenta acceder a la ruta http://llullutuqo.me/owncloud/files/webdav.php/ no mostraba la página http://llullutuqo.me/owncloud/files/webdav.php (nótese el / final en la primera URL) y salina una página con el texto No input file specified.
Obviamente, estos problemas eran debido a mi proveedor de hosting ya que usa PHP mediante CGI y no como un módulo de apache, por suerte hay solución a esto.
Solución del problema 1: Para que la autenticación HTTP funcione con PHP-CGI debes crear un archivo .htaccess y además colocar,o adicionar en caso de que ya exista el archivo .htaccess, el siguiente texto:
<ifmodule mod_rewrite.c=""> RewriteEngine on RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] </ifmodule>
Finalmente, debes subirlo a la ruta owncloud/ o si deseas puedes ponerlo en la raiz de tu hosting. Para que esto funcione debe estar activado el módulo rewrite de apache, usualmente la mayoria de proveedores de hosting activan este módulo.
Solución al problema 2: Para activar las rutas relativas debes establecer la variable cgi.fix_pathinfo a 1 en php, puedes usar el archivo de configuración php.ini, simplemente creas o adicionas:
cgi.fix_pathinfo = 1;
El nombre del archivo puede variar según tu proveedor de servicios, en mi caso se llamaba php5.ini y tube que ubicarlo en la raiz de mi hosting. Ahora un pantallazo de dolphin accediendo mediante WebDAV a nuestro servidor de archivos owncloud.