Instalar Joomla 3.0.x en un servidor Ubuntu.

Joomla es un popular CMS que nos permite crear y diseñar páginas web dinámicas sin necesidad de conocer ningún lenguaje de programación o diseño web. A finales de septiembre fue liberada la versión 3.0 y tengo que reconocer que desde la 2.5 (LTS) el salto ha sido importante, principalmente en apariencia.

 El objetivo de este tutorial es poner el mundo del diseño web al alcance de todos. La idea es que podáis montar un servidor LAMP y poner en funcionamiento una página web con Joomla. Siendo una forma magnífica para adiestrarse en el manejo de este CMS.

 Si van a seguir el tutorial como algo didáctico tanto como para introducirse en le mundo del servidor web y Joomla es recomendable que utilicen una máquina virtual. Igualmente espero que sea útil a todos aquellos que aunque previamente ya conocían a Joomla les sirva de actualización o consulta.

El tipo de sistema del servidor a priori es indiferente, siempre y cuando tengan en cuenta la estructura jerárquica de archivos con respecto a Ubuntu/Debian. En mi caso utilizaré Ubuntu Server 12.04.1 LTS, es fácil de instalar y tiene muy buen rendimiento, ya os digo, el sistema es a vuestro gusto, pero el tutorial está diseñado para Ubuntu. Por otra parte, a falta de dominio utilizaré direcciones IP.

 Hablemos de Joomla. Para montar una página con Joomla se necesitan realizar 4 pasos generales:

  1. Habilitar un alojamiento web o hosting (si tenemos dominio mejor)

  2. Crear una base de datos para Joomla, MySQL (preferiblemente)

  3. Alojar Joomla en el servidor.

  4. Ejecutar el instalador desde el navegador para instalar y configurar el CMS.

De forma general es bastante elemental y rutinario, sin embargo dependerá de nuestras especificidades el cómo se procederá. En nuestro caso no tendremos los famosos cPanel que proporcionan los proveedores de hosting pero tampoco nos hará falta, tampoco utilizaré XAMPP porque alargaría el tutorial enormemente.

Comenzamos.

  1. Habilitar un alojamiento web o hosting.

Cuando instalamos Ubuntu Server para este objetivo, lo normal es que  durante la instalación incluyamos directamente un servidor LAMP y otro openSSH (nos vendría bien). Sin embargo voy a partir desde la idea que solo tenemos a disposición un sistema básico o de tipo desktop, por tanto  no tendríamos instalado apache.

 ¿Cuál es el método más fácil de instalar LAMP en Ubuntu Server?

Existe un programa llamado tasksel que se ejecuta durante el proceso de instalación y nos permite instalar grupos completos de paquetes para funciones determinadas, para ejecutarlo solo necesitamos el siguiente comando. Es parecido a los poderosos comandos de Yum de groupinstall.

# tasksel

Nos debe aparecer  esto:

La forma de utilizarlo es la siguiente: Con las flechas del teclado nos movemos de arriba-abajo, con la tecla SPACE ponemos asterísticos para seleccionar, con TAB saltamos a donde dice ACEPTAR y con ENTER lo confirmamos. Para salir sin cambios con ESC.

Una vez aceptado el  realiza todo el proceso de instalación.

Durante la instalación de LAMP se les solicitará que le asignéis una contraseña a la cuenta “root” de la base de datos mysql, es importante que recuerden esa contraseña ya que la necesitaremos más adelante durante la instalación de phpmyadmin.

De momento ya tenemos un paso importante superado, tener instalado el servidor Apache.

Para comprobar que está operativo solo necesitáis escribir la dirección IP del servidor en la barra del navegador y verán esto:

 

En mi caso era 192.168.1.9, si no saben cual es la vuestra, basta con lanzar ifconfig y buscar en la interfaz (eth0, eth1, etc) donde dice addr:x.x.x.x.

$ ifconfig

Análogamente,  cuando iniciamos Ubuntu Server nos la muestra.

Así de sencillo ya hemos completado el Paso 1 y tenemos en funcionamiento un alojamiento web en dicha dirección IP.

En caso que estén trabajando in sito sobre el servidor, solo tiene que poner en el navegador del mismo 127.0.0.1 o localhost.

  1. Crear una base de datos MySQL para Joomla

Para ello he utilizado PhpMyAdmin.

# apt-get install phpmyadmin

Durante la instalación nos hará unas preguntas.

Lo primero. ¿Para qué servidor lo queremos? En nuestro caso es para Apache y eso es precisamente lo que debemos responder.

Marcamos con SPACE en Apache2 (que se vea el asterisco). Con TAB saltamos a ACEPTAR y con ENTER confirmamos.

Seguidamente  aparecerá este cuadro y como no somos administradores avanzados nos limitamos a marcar Sí.

Ahora nos pedirá la contraseña del usuario root de MySQL, la que anteriormente les he insistido en que recordaran durante la instalación de LAMP (paso 1)

La escribimos, saltamos con TAB a ACEPTAR y continuamos.

Solo nos queda asignarle una contraseña al usuario phpmyadmin, no tiene que ser la misma que la anterior.  De hecho, si leen detenidamente ni siquiera es necesario.

Aceptamos y si todo ha salido bien ya debemos tenerlo funcionando.

Escribimos en la barra del navegador: IP_servidor/phpmyadmin, en mi caso si recuerdan sería 192.168.1.9/phpmyadmin y les re-direccionará al formulario de login de phpmyadmin.

Bien podéis entrar como el usuario root de MySQL con la famosa contraseña que no debéis olvidar o bien con el usuario phpmyadmin de MySQL.

En todo caso, es mejor que optéis por root ya que será necesario tener privilegios de root para crear una base de datos para Joomla.

Por dentro phpmyadmin tiene esta apariencia:

 Vamos ahora a crear la base de datos. El procedimiento más sencillo es crear un usuario con su base de datos propia. En privilegios, debajo añadimos un nuevo usuario:

Prestar atención a como cumplimenté el formulario para un usuario llamado j3,  está separado en dos imágenes.

En el ejemplo se ha creado un usuario llamado j3 con una base de datos con el mismo nombre y con todos los privilegios sobre ella. Si todo salió bien, en la lista de usuarios deben tener un registro como este:

Pues ya hemos completado el Paso 2, crearle un usuario y base de datos mysql a joomla.

3. Alojar Joomla en el servidor.

Nos moveremos al directorio /var/www/ que ahí tenemos que trabajar un poquito. Si alguien no lo sabe, por defecto ese el directorio público de Apache y desde el punto de vista del navegador es la raíz de la web

# cd /var/www/

Ahora crearé un directorio para alojar joomla.

  • Es totalmente válido instalar Joomla en la raíz de la web, o sea, desde el punto de vista del sistema en /var/www (por defecto). A priori no es algo demasiado importante ya que la raíz de la web se puede mover editando /etc/apache2/site-available/default. Para un usuario acostumbrado a trabajar con servidores esto debe sonar muy repetitivo pero como no sé quien le pueda interesar este artículo me veo obligado a explicar unos detalles. En este tutorial haré la instalación en un directorio en un escalón inferior a /var/www/, el efecto inmediato de esto según la visión del navegador es que la página la encontrará en: IP_servidor/directorio_joomla/.Si hubiese estado instalada en el directorio raíz pública con solo poner la dirección IP o dominio ya entraríamos en la página. Pero ya os digo, podéis instalar joomla donde quieran y luego si desean que esté en la raíz web o no, solo tendréis que hacer la modificaciones pertinentes en apache para que redireccione su raíz del host al directorio que le indiquéis.

En resumen, en nuestro caso particular Joomla estará en:

IP_servidor/joomla/

Continúo.

Creo un directorio llamado joomla en /var/www:

root@ubuntuS:/var/www# mkdir joomla

Entro en el:

root@ubuntuS:/var/www# cd joomla

Ahora vamos a descargarnos Joomla. (Versión en español)

# wget http://joomlacode.org/gf/download/frsrelease/17609/76804/Joomla_3.0.1-Spanish-Pack_Completo.tar.bz2

El tutorial está basado en Joomla 3.0.1 pero a efectos del mismo no cambia nada con respecto a la versión actual, 3.0.2.

Utilicé wget desde el servidor, pero también podéis descargar el archivo en vuestro ordenador y con un cliente FTP como Filezilla subirlo el archivo al servidor.

Lo descomprimimos:

# tar -xjvf Joomla_3.0.1-Spanish-Pack_Completo.tar.bz2

Si listamos los directorios tendremos todo esto:

Antes de comenzar la instalación aún debemos solucionar otras cosas previas y realizar unas verificaciones.

Lo primero y muy importante, es darle privilegios a Apache de escritura en ese directorio donde está Joomla (/var/www/joomla). En teoría se podría realizar la instalación de Joomla pero muchas cosas que debería ser automáticas como la generación de ciertos archivos de configuración y otras más en el futuro las tendríamos que hacer manualmente a golpe de terminal y os aseguro que no mola nada.

# chown -R www-data:www-data /var/www/joomla

En otras distribuciones como CentOS hay que ver como es identificado apache por el sistema, creo que en ese caso es apache:apache.

Este comando que tiene como estructura:

chown -R usuarioX:grupoX /ruta/absoluta/

En resumen, estamos convirtiendo a Apache en propietario del directorio de forma recursiva (todo lo que hay dentro también)

Luego, en la página de http://www.joomlaspanish.org/ nos advierten:

Para esta versión los requisitos del sistema son los siguientes:

  • PHP 5.3.1
  •  register_globals debe estar apagado (Off)
  •  magic_quotes_gpc debe estar apagado (Off)

El primero es muy fácil de comprobar con el comando:

# apt-cache policy php5

Podemos comprobar que tenemos una versión superior. Luz verde.

Lo siguiente lo debemos buscar en el archivo de php.ini:

# nano /etc/php5/apache2/php.ini

Es un archivo extenso y les sugiero utilizar Ctrl W para buscar las líneas.

Por defecto ya estaban ambas en Off pero no estaría mal siempre comprobar.

Por fin. Ha llegado el momento de instalar joomla.

4. Ejecutar el instalador desde el navegador para instalar y configurar el CMS.

Para ello simplemente debemos poner en el navegador en: IP_servidor/joomla (en caso que se encuentre en el directorio raíz, con la dirección IP o dominio bastará)

En mi ejemplo es:

192.168.1.9/joomla

Inmediatamente entonces serán conducidos por el navegador al instalador.

Verán lo siguiente y deberán cumplimentar los formularios.

 

El proceso de instalación como pueden ver se limita a rellenar tres formularios y todo de la forma ” siguiente siguiente hasta finalizar”.

Este primer formulario apenas necesita explicación:

 

Solo una aclaración, en usuario Administrador podéis poner el que deseen, incluso sería hasta mejor no poner “admin” y por supuesto, deben proporcionarle una contraseña robusta. Con ese usuario es con el que a priori administraréis el sitio.

Debajo aparece un botón que no me cupo en la imagen. Por defecto viene apagado, dejarlo así ya que eso luego se puede cambiar.

Con el botón azul de SIGUIENTE pasaréis al formulario 2.

En ese segundo Formulario veréis como todo lo que hicimos para y con phpmyadmin adquiere sentido. Nos pedirá un usuario y una base de datos MySQL que utilizar.

El formulario 3 más que un formulario nos resume lo que hemos configurado para la instalación.

 

Vamos a ver lo que dice por detalle. (lo he separado en varias imágenes para que sea visible)

Marcamos que nos instale los datos de ejemplo en español.

Como pueden ver, casi todo en verde, un lujo que no tendréis en la mayoría de proveedores de hosting. Solo falta dar en el botón de instalar.

Debemos eliminar la carpeta de instalación, es lo mismo que sacar el CD de instalación de un sistema de la disquetera. Con hacer click en el botón naranja automáticamente la eliminará.

Para ir al Frontend del sitio solo tienen hacer click en el botón de “Sitio” y al Backend en el botón de “Administrador”.

Para los que conozcan las versiones de Joomla anteriores les llamará la atención de que en la plantilla por defecto del Frontend y el Backend se han llevado un buen lavado de cara.

FRONTEND

 

BACKEND

 

Como podréis ver, el lavado de cara es significativo con respecto a las versiones anteriores.

Para los que nunca habéis trabajado con Joomla, pasar del frontend al backend es tan sencillo como poner el domino/administrator.

En mi ejemplo:

Backend: IP_servidor/joomla/administrator

Frontend: IP_servidor/joomla.

 Ya tienen Joomla operativo y listo para trastear todo lo que quieran.

Saludos y espero que les guste el tutorial, un poco largo pero con todo el detalle que una persona puede necesitar para empezar. Si me permiten estoy trabajando en un artículo para implementar algunas medidas de seguridad básicas para Joomla que puede estar listo en unos días. Espero no haberlos aburrido demasiado.

Más información en: http://www.joomlaspanish.org/


krel

krel: Soy economista de profesión. Amante del software libre. OpenSUSE es la niña de mis ojos pero no le hago asco a ninguna distro. Bueno, a una sí, a CRUX que nunca la he podido instalar.


33 comentarios en “Instalar Joomla 3.0.x en un servidor Ubuntu.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *

  1. Se ve lindo la versión 3.

    1/33
    • La parte visual se ha llevado un buen baño, desde que conozco a Joomla (v1.5) apenas ha cambiado.

      Se me olvidó poner imágenes de la parte de dentro del backend pero si lo ves lo mismo te impresiona, está tan renovado que uno se queda con cara de póker diciéndose: uff ¿por dónde empiezo? En fin, saludos.

      6/33
  2. Lo mejor de la versión 3 es que viene optimizada para navegadores móviles.

    2/33
    • Efectivamente, sin duda, la mejora estrella es la que comentas, la adaptabilidad para dispositivos móviles.

      No obstante esta versión también tiene otras muchas mejoras e innovaciones, algunas técnicas como el driver para PostgreSQL, estandarización y consistencia del código, y otras muchas visuales y para desarrolladores. De todas formas hay que verla como el inicio de un nuevo ciclo.

      Saludos.

      8/33
  3. Amigo Krel, que placer =D !!! …

    Extenso pero muy completo el tutorial, magnifico diría yo …

    Justo me encontraba hace un momento instalando LAMPP para probar Joomla ya que tengo un par de proyectos posibles, entro al blog y me encuentro con esto, debe ser una especie de señal =D …

    Gracias por la info, esperaré con ansias tu escrito sobre seguridad …

    Saludos !!! …

    3/33
    • Sí, es bastante extenso y eso que es la versión corta XD.
      Yo te recomendaría para proyectos profesionales la versión 2.5 que es una LTS, está muy pulida y cuenta con un mayor número de extensiones, plantillas, etc.

      El tema de la 3.0 es que se ha pegado un salto interesante, más que nada de forma visual, inclusión de bootstrap y el diseño adaptable para móvil. Se inicia un nuevo ciclo, pero le falta un poco por andar.

      En fin, espero tener lo próximo pronto. Saludos :)

      5/33
  4. Simplemente estoy muy agradecido :)

    4/33
  5. Después de ver a KZKG^Gaara vulnerar literalmente a Joomla (¿o era Drupal?), créanme, nunca usaría este CMS para cosas importantes. :P

    7/33
    • En mi opinión el core de Joomla es bastante sólido en cuanto a seguridad. Sin embargo el abuso de extensiones y plantillas pueden hacerle grandes agujeros.

      Pero también es como todo, dependerá de las implementaciones de seguridad que se pongan en práctica (tanto a nivel de servidor como de CMS), la dedicación del administrador a esta tarea y la imaginación del mismo en ello, y por supuesto, las destrezas del atacante. Pero importante importante es tener joomla actualizado, de la misma forma que actualizamos nuestros sistemas.

      No sé por qué cuando uso Midori me sale Mac OS, ay ay con el user agent.

      9/33
  6. Muchas gracias por este tutorial, con el voy a hacer pruebas en la pc :D
    saludos

    11/33
  7. Sencillamente extraordinario, gracias por tomarte el tiempo para explicarlo de forma tan completa y sencilla que me atrevo a decir anima a cualquiera. Gracias por tu aporte y generosidad

    12/33
    • Gracias. Realmente es más sencillo de lo que pueda parecer pero plasmarlo en papel lleva trabajo, espero alcanzar el objetivo extremadamente pretencioso que me fijé.

      Saludos y mantengo el agradecimiento por el halago.

      14/33
  8. Muy bueno el post me sirvió y lo seguí al pie de la letra, muchas gracias un saludo!!

    15/33
  9. Me ha venido de lujo, ha sido sencillisimo, en clase nos enseñaron un metodo mucho mas lioso y complicado :S

    16/33
  10. Muchas gracias, fue facilisimo, todo explicado perfectamente.
    Porcierto Ubuntu graficamente es un desastre xD

    17/33
  11. Me alegro que les haya servido el tutorial, lo ideal es que se entienda el procedimiento, luego las formas ya cada uno las adaptará.

    NokiaForever: yo me considero suser pero últimamente estoy utilizando ubuntu en el ordenador de trabajar, (aunque tengo otros dos con opensuse 12.2). Quizás será porque es un ordenador más potente pero el rendimiento es aceptable, hace unos días estuve trabajando con fedora18 y sinceramente gnome-shell a medida que avanza deja más que desear. Luego Cinnamon para ser lo que es, no tiene ni el rendimiento ni la estabilidad que debería. En mi opinión, en estos momento Unity es lo más decente de gtk. Cortando por lo sano, recomiendo kde 100%.

    En cuanto mi opinión de ubuntu, prefiero siempre rpm antes que deb. Después de un par de meses de los lanzamientos logra buena estabilidad, el desastre literalmente es el primer mes después de cada lanzamiento.

    18/33
  12. Yo uso Windows 8 y 7 en mis PCs ya que prefiero Windows por muchos motivos, pero con SOs Linux instalados tambien, porque me gusta asi xD, y con todo lo que has dicho me han dado ganas de probar opensuse 12.2 en alguno, y Unity no me gusta, prefiero gnome normal, y modificarlo con compiz y demas.

    19/33
  13. Muy buen manual , gracias. lo unico que yo hice todo y se instalo correctamente se me ve el panel admind de joomla , pero al darle ver pagina sigue saliendo la pagina en blanco de apache que pone It work’s, a que se debe eso, saludosy gracias.

    20/33
    • Revisa la URL que has puesto en el navegador. El portal de admin es un subdirectorio de la web, para que te salga la web quita la parte de administrator.

      En algún lugar tiene que haberse instalado. Si has hecho como en el ejemplo tal cual la web deberia estar en IP/joomla/ y en ese caso si pones solo la IP no habría nada, solo el documento HTML del estado del servidor. En cualquier caso entra dentro de /var/www/ y mira ver los directorios que hay. En el navegador si no has modificado apache, /var/www/ es la IP, y nada, si joomla está instalado en escalón inferior solo tienes que poner IP/directorio_inferior. Es un poco de lio pero no se como explicarme mejor al respecto.

      21/33
  14. no si eso ya lo se , si me sale el panel administrativo bien y entro dentro de joomla , ya havia instalado muchos en servidore windows pero nunca en linux , lo tengo en la raiz de apache en /www pongo midominio/administrator y me sale el panel y eso todo bien , pero quito el administrator para que se vea la web normal y no se ve me da el error , o mejor dicho dentro del panel de joomla le doy a ver porta y no se me ve, la cosa es que en linux no se muy bien como moverme , pero en windows ya lo tendria olucionado jejeje , bueno a ver lo que se puede hacer , gracuias igualmente.

    22/33
  15. Muy bueno su tutorial.
    Es el mismo proceso para debian.
    saludos!

    23/33
  16. Google Chrome 27.0.1453.94Windows 7Aero
    Ing. Guillermo Castro

    Muy buen manual, estaba buscando una herramienta para la implementar en la compañía para documentación, esta me parece fantástica.

    Muchas Gracias por el manual.

    24/33
  17. oye alguien a podido migrar una sitio echo en joomla, esque yo hice uno, instale el joomla 2.5.9 en windows 7
    lo pase a windows xp, hice un restaurado de la bd en windows 7 y la pase a xp la importe todo bien
    luego copie la carpeta de instalacion de joomla la que esta en www,
    y wala todo funciona bien sin ningun problema

    quise hacer lo mismo pero en ubunto, ya que ahi necesito confifurar el servicio de dhcp y dns, y montar el servidor apache

    hago el proceso de instalacion de ahi importa la base de datos
    y remplaso los archivos de instalacion y nomas no sobreescribo el archivo configuration.php

    y cargo la pagina el index.php si abre, pero ahi trato de navehar por la pagina y ya no abre mas no se que pasa

    a la carpeta principal le doy todos los permisos de lectura y escritura, pero nomas no me carga bien la pagina que hago alquien que me eche la manoo…

    25/33
  18. Genial :D

    26/33
  19. Firefox 21.0Ubuntu
    Óscar Villa

    Muchas gracias. Cosa curiosa: es el primer post o tuto que sigo paso a paso sin tener que agregar o modificar nada y llego al resultado esperado. Y creeme que he seguido muchísimos.
    De verdad que muchas gracias, y felicitaciones: dices que largo, pero bien ha valido la pena, está muy bien redactado: !lo sigues y tienes joomla¡

    27/33
  20. hola! antes que nada quiero felicitarte por el tutorial, está súper completo y más claro imposible.

    mi consulta es porque me surgió un problema y no se cómo solucionarlo: instalé lamp y cuando ingresé la ip en el navegador me devolvió lo siquiente:

    Not Found

    The requested URL / was not found on this server.
    Apache/2.2.22 (Ubuntu) Server at 192.168.1.101 Port 80

    no entiendo qué significa y si igualmente está todo ok.
    como dato: pude ingresar bien al phpmyadmin con esa dirección IP.

    agradecería toda la ayuda posible!

    28/33
  21. Muy buen tutorial. Muy fácil de seguir.
    Muchas gracias

    29/33
  22. Hola.. muy buen tutorial.. me fue de maravilla!!
    Tengo una consulta, como creo una nueva pagina para no usar los archivos de ejemplo??

    Muchas gracias..

    30/33
  23. IP_servidor/joomla. Pero si yo no quiero que salga el /joomla y solo que cargue la pagina por el Ip del server que archivo de configuracion tengo que tocar

    Gracias

    31/33
  24. Te felicito por la explicación y estoy muy agradecido por la forma detallada en que la realizaste, tenía rato de leer otros post por un error de instalación que tenía y entre los que consulté este me gustó mucho porque aquí encontré la solución.

    Gracias,

    32/33
  25. OK tengo que decirlo… normalmente no posteopero que pasada… definitivamente quedecon una crara de poker y sabes medio mucha risa con lo de lavado de cara porque fue esactamente loq ue hiceal ver las imagenes…saludos

    33/33

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *