Geek the Planet


GNU/Linux no image

Published on mayo 28th, 2008 | by Angelfire

26

How To: Instalar Servidor Web en Ubuntu 8.04

Hacia mucho tiempo habia hecho este how-to, me habia dado mcuha pereza subirlo porque toca emepzar a recortar imágenes y redactar un texto, pero bueno, es el momento de hacerlo.

Lo primero que haré será explicar que es básicamente un servidor web.

Un servidor web muestra contenido estático a un navegador, carga un archivo y lo muestra a través de la red al navegador de un usuario. Este intercambio es mediado por el navegador y el servidor que hablan el uno con el otro mediante HTTP. Se pueden utilizar varias tecnologías en el servidor para aumentar su potencia más allá de su capacidad de entregar páginas HTML; éstas incluyen scripts CGI, seguridad SSL y páginas activas del servidor (PHP, JSP, etc). [1]

En este caso nuestro servidor web tendrá soporte para aplicaciones web hechas en PHP y que pueden o no utilizar bases de datos en MySQL.

Para instalar un servidor web tenemos básicamente dos opciones, la primera es hacer la instalación mediante paquetes precompilados, como el XAMPP, en donde sólo es cuestion de ingresarle unas configuraciones básicas que algun componente del servidor web necesitará. La segunda opción teniendo en cuenta que la instalación la haremos en Ubuntu, es instalar paquete por paquete desde los repositorios oficiales de la distribución. En este How-to utilizaré> la segunda opción.

  1. Instalación de paquete apache2: Apache es un servidor HTTP de código abierto que implementa el protocolo HTTP/1.1.
    apache2
    Con esto ya tendrémos instalado nuestro servidor http, para verificar que está bien instalado escribimos la dirección http://localhost ó http://127.0.0.1 en nuestro navegador y nos debe aparecer lo siguiente: it works.
  2. La carpeta raíz de este servidor por defecto se encuentra en /var/www/ sin embargo en este caso se encontrará en /var/www/html/ (más adelante explicaré el porque de este cambio).

  3. Instalación del paquete PHP5: Este paquete nos permitirá interpretar páginas dinámicas desarrolladas en PHP. php5
  4. Instalación del paquete libapache-mysql: Este paquete contiene las librerias necesarias para el correcto funcionamiento de Apache con MySQL. libapache-mysql
  5. Instalacion del paquetes mysql-server: MySQL será nuestro sistema para la gestión de bases de datos. mysql-server
    Finalizando la instalación de este paquete, nos pedirá la contraseña del usuario root para conectarse a MySQL, que es elegida por el usuario y es la que nos permitiria conectarnos posteriormente a phpmyadmin y/o a cualquier base de datos creada con el usuario root.mysql-server password
  6. Instalación del paquete phpmyadmin: Phpmyadmin es una aplicación web que nos va a permitir la administración de nuestras bases de datos de una manera gráfica.
    phpmyadmin
    Finalizando la instalación de este paquete, nos pedirá que escogamos el servidor web con el que vamos a trabajar, en nuestro caso es apache2. phpmyadmin apache2
    Si nuestro phpmyadmin quedó bien instalado y configurado correctamente con nuestro servidor, al ingresar en la siguiente dirección http://localhost/phpmyadmin nos deberia permitir loguearnos y mostrarnos los siguiente: phpmyadmin
  7. Podria decir que este paso es un plus, arriba mencioné que la carpeta raíz de nuestro servidor se encuentra en /var/www/ pero que para nuestro caso seria /var/www/html/, ahora explicaré el porque, simple y llanamente es por orden, de esta manera podriamos tener otras carpetas diferentes, por decir algo /var/www/ftp/, /var/www/cgi-bin/, etc. Digamos que simplemente es un capricho que me enseño un amigo (Willy aquí va tu cuña :P) y pues es bastante ordenado tenerlo de esta manera. Ahora, el problema es que por defecto nuestro apache trae la siguiente configuracion:
    
    NameVirtualHost *
    <VirtualHost *>
    	ServerAdmin webmaster@localhost
    
    	DocumentRoot /var/www/
    	<Directory />
    		Options FollowSymLinks
    		AllowOverride None
    	</Directory>
    	<Directory /var/www/>
    		Options Indexes FollowSymLinks MultiViews
    		AllowOverride None
    		Order allow,deny
    		allow from all
    	</Directory>
    

    Antes de seguir, otra de las cosas en las que me me ayudó Willy, fue a darme cuenta que en algunas ocasiones Ubuntu está loco, por defecto la configuración de nuestro apache se encuentra en /etc/apache2/httpd.conf, si se fijan en este archivo está vacio, ¿por qué?, pues ni idea, aparte de no tener razón de ser no se porque lo hacen, en fin, el caso es que para encontrar esta configuracion tenemos que acceder a /etc/apache2/sites-available/default, y ahi si, modificar lo anterior por:

    
    NameVirtualHost *
    <VirtualHost *>
    	ServerAdmin webmaster@localhost
    
    	DocumentRoot /var/www/html/
    	<Directory />
    		Options FollowSymLinks
    		AllowOverride None
    	</Directory>
    	<Directory /var/www/html/>
    		Options Indexes FollowSymLinks MultiViews
    		AllowOverride None
    		Order allow,deny
    		allow from all
    	</Directory>
    

    El paso anterior es opcional, sin embargo si deben reiniciar el apache para que tome todos los cambios hechos.

    $ sudo /etc/init.d/apache2 restart

Cualquier duda que puedan tener o cualquier error que hayan encontrado me gustaria que por favor me lo notificaran, trate de hacer el how-to lo más limpio y gráfico posible para su mejor entendimiento, sin embargo no soy perfecto. Para la correcta visualización de las imágenes solo es cuestion de darles click encima.

Tags: , , , ,


About the Author

Systems Engineering, Computer Systems Specialist, Social Engineering Specialist. Social Media Analyzer. Usability and SEO enthusiasm (Este es mi perfil de Twitter...)



26 Responses to How To: Instalar Servidor Web en Ubuntu 8.04

  1. anthony says:

    Muchas Gracias por tu aporte en realidad estoy comenzando con esto de servidores php y base de datos, pero me ayudo tu guia. Si sabes de algun curso web o alguno en Caracas Venezuela agradecería mucho tu informacion. Nuevamente Muchas Gracias!

  2. anthony says:

    Hola nuevamente me aparece este mensaje luego del paso 5 (Instalación del paquete phpmyadmin):

    Not Found

    The requested URL /phpmyadmin was not found on this server.
    Apache/2.2.8 (Ubuntu) Server at localhost Port 80

    si me puedes ayudar gracias!

  3. Angelfire says:

    Tal vez esto te pueda servir:
    http://www.ubuntu-es.org/index.php?q=node/72878

    A decir verdad he instalado ya un par de veces el servidor y nunca he tenido problemas, sin embargo Ubuntu es como loco a veces :S

  4. anthony says:

    Buenas bueno gracias por tu informacion pero revisé y solo faltaba en el archivo /etc/apache2/sites-available/default un “>” al final de la 10ma linea y todo marchó bien.

    igual gracias saludos

  5. Oscar Peña says:

    Hola a todos, espero no apartarme del tema. Resulta que ando escogiendo una distribucion linux para instalar MySQL. Pero necesito la version 5.1, como al momento de escribir esto, esta version esta hasta ahora, en RC, asumo que no viene pre. Como en linux no soy muy bueno, me gustaria qua elguien me ayudara con algun tutorial. Hace tiempo instale la version 7.04 de ubuntu server y muy bien, pero no sabria como actulizar MySQL de la version 5.0 a la version 5.1. Aclaro que me gustaria ubuntu server.

  6. Oscar Peña says:

    Esta es solo porque se me olvido chequear el cuadrito de notificacion al email.

  7. Angelfire says:

    Oscar creo que la única opción que tienes es hacer la instalación de Mysql-Server manualmente, es decir, descargarte el paquete desde el sitio oficial, entras a este sitio http://dev.mysql.com/downloads/mysql/5.1.html, seleccionas el paquete que necesites dependiendo de la distribución que hayas elegido e instalas el .tar.gz.

    Desafortunadamente en el sitio oficial no hay un paquete específico para ubuntu.

  8. riling87 says:

    Al instalar mysql server me da esto y no me deja seguir

    Leyendo lista de paquetes… Hecho
    Creando árbol de dependencias
    Leyendo la información de estado… Hecho
    mysql-server ya está en su versión más reciente.
    Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.
    libt1-5
    Utilice «apt-get autoremove» para eliminarlos.
    0 actualizados, 0 se instalarán, 0 para eliminar y 0 no actualizados.
    2 no instalados del todo o eliminados.
    Se utilizarán 0B de espacio de disco adicional después de desempaquetar.
    Configurando mysql-server-5.0 (5.0.51a-3ubuntu5.1) …
    * Stopping MySQL database server mysqld [ OK ]
    Reloading AppArmor profiles : done.
    * Starting MySQL database server mysqld [fail]
    invoke-rc.d: initscript mysql, action “start” failed.
    dpkg: error al procesar mysql-server-5.0 (–configure):
    el subproceso post-installation script devolvió el código de salida de error 1
    dpkg: problemas de dependencias impiden la configuración de mysql-server:
    mysql-server depende de mysql-server-5.0; sin embargo:
    El paquete `mysql-server-5.0′ no está configurado todavía.
    dpkg: error al procesar mysql-server (–configure):
    problemas de dependencias – se deja sin configurar
    Se encontraron errores al procesar:
    mysql-server-5.0
    mysql-server
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Gracias

  9. Angelfire says:

    Sinceramente no sé como responderte riling87, acabo de instalar el servidor y no me aparecio ningún tipo de error, algo tuviste que haber hecho mal durante la configuración.

  10. albermillan69 says:

    ANTHONY!! tengo el mismo problema q tu!! pero cuando voy a modificar el archivo /etc/apache2/sites-available/default en la linea donde dice: DocumentRoot /var/www/ y al final le agrego “>” q voy a guardar los cambios me dice q no estoy autirizadoa para modificar dicho archivo!!! como tu hiciste???

    Gracias!!!

  11. navegatron says:

    quiero que me ayuden por favor hice todo lo que dice hasta modificar el default de sites-available y al restart el apache me sale

    * Restarting web server apache2 apache2: Syntax error on line 298 of /etc/apache2/apache2.conf: Syntax error on line 9 of /etc/apache2/sites-enabled/000-default: /etc/apache2/sites-enabled/000-default:9: was not closed.

    que puede andar mal hice todo y cuando pongo en el brouser http://127.0.0.1 me sale

    Falla de conexion
    Firefox no puede establecer una conexión con el servidor en 127.0.0.1.

    Aunque el sitio parece válido, el navegador no puede conectarse.

    * ¿Puede ser que el sitio no esté disponible temporariamente? Intente nuevamente después.
    * ¿No puede navegar otros sitios? Verifique la conexión a la red de su computadora.
    * ¿Su computadora o red están protegidas por un firewall o proxy? Una configuración incorrecta puede interferir con la navegador

    pronta ayuda..

  12. navegatron says:

    me olvidaba
    error on line 298 of /etc/apache2/apache2.conf

    mi configuracion apache2.conf las ultimas lineas

    # Include of directories ignores editors’ and dpkg’s backup files,
    # see README.Debian for details.

    # Include generic snippets of statements
    Include /etc/apache2/conf.d/

    # Include the virtual host configurations:
    Include /etc/apache2/sites-enabled/ (linea 298)

    y la de

    Syntax error on line 9 of /etc/apache2/sites-enabled/000-default: /etc/apache2/sites-enabled/000-default:9: was not closed.

    es

    AllowOverride None
    (linae 9)
    <Directory /var/www/>

    de ante mano le agradesco sus ayudas……

  13. Gnomo says:

    Hola buenas, escribo porque tengo un problema existencial, haber si me pueden hechar una mano…tengo instalado ubuntu en un pendrive junto con php5, Apache2 y Mysql, seguramente mi problema sea de configuración de apache pero es que soy muy nobb,XD, el caso es que no puedo cargar imagenes (jpg, bmp,png) en documentos php ni en html en mi servidor local, en firefox aparecen como rectangulos vacíos ( lo ago con code html <img src=”1.jpg” width=”700″ height=”106″), en cambio si por ejemplo creo un documento html en el escritorio y lo cargo con firefox, bualá, aparece…También puse los permisos 777 a todos los ficheros de www pero nada, si pueden ayudarme estaría muy agredecido.

    Un saludo. Gnomo.

  14. kdo says:

    Muchisimas gracias por todo todo funciona a la perfeccion , todos los pasos correctos , agradezco que hayas invertido tiempo en este How to.

    Un abrazo

  15. Anthony says:

    Saludos, albermillan69 lo q tienes que hacer es entrar a la consola y colocar los permisos de tu cuenta a ese archivo….

    1-entra a la consola
    2-tipea sudo su – (ahora sera root)
    3-cambia la permisologia de root a tu cuenta
    (chown nombre_de_usuario /etc/apache2/sites-available/default)
    4-modifica el archivo

    bye!

  16. Chuy Castillo says:

    Ya instalé apache2 y todos los demás paquetes y todo correcto. Ahora tengo la inquietud de ver mi Web Server en internet y no de manera local como se hace con el http://localhost. Lo que quiero es que cuando yo ponga mi dominio ejem: chuycastillo.dyndns.org me muestre mi web server. Que es lo que debo hacer?? Tengo prodigy infinitum y en el cortafuegos ya abrí el puerto 80 a mi maquina en la lan. Si alguien puede ayudarme se lo agradeceré.

  17. Pingback: REDES asycom » Blog Archive » “Anecdótico”

  18. Javi says:

    Muy útil el tutorial aunque tuve algún problema con los archivos php que se descargan en lugar de mostrarse, al final era un problema con los modulos que se cargaban en el /mods-enabled pero encontré una solución haciendo un link del fichero php5.conf y php5.load del directorio /etc/apache2/mods-available al anterior (por si a alguien le pasa).

    Gracias

  19. sundary says:

    Hola, ya configure todo como dices, solo que al momento de querer loguearme en myphpadmin me marca un error #2002, ya reinicie el servicio de apache pero no me funciona… si me pudieras ayudar con esto por favor…

    SaLuDoS….

  20. Jorge says:

    Es la mejor explicacion que se puede encontrar dentro de inet en este momento, grande y muchas gracias por el aportazo!!!!

  21. crissconio says:

    Saludos a todos, he hecho lo que han descrito aquí pero tengo un inconveniente no puedo modificar y guardar el archivo default.

    He hecho lo siguiente:

    1-entra a la consola
    2-tipea sudo su – (ahora sera root)
    3-cambia la permisologia de root a tu cuenta
    (chown nombre_de_usuario /etc/apache2/sites-available/default)
    4-modifica el archivo

    abro el archivo lo modifico pero no lo puedo guardar con los cambios me dice que no tengo privilegios…

    Me pueden ayudar o si hay algún comando para modificarlo desde la consola?

    Espero sus respuesta

  22. fliberty says:

    @anthony: A mi me funciono lo siguiente:
    sudo ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin

  23. Luis says:

    admin@ks3911:~$ sudo apt-get install phpmyadmin
    Leyendo lista de paquetes… Hecho
    Creando árbol de dependencias
    Leyendo la información de estado… Hecho
    phpmyadmin ya está en su versión más reciente.
    Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.
    xserver-xorg-video-amd linux-headers-2.6.24-16-generic linux-headers-2.6.24-16
    Utilice «apt-get autoremove» para eliminarlos.
    0 actualizados, 0 se instalarán, 0 para eliminar y 0 no actualizados.
    1 no instalados del todo o eliminados.
    Se utilizarán 0B de espacio de disco adicional después de desempaquetar.
    Configurando acpid (1.0.4-5ubuntu9.3) …
    * Starting ACPI services… acpid: can’t open /proc/acpi/event: No such file or directory
    invoke-rc.d: initscript acpid, action “start” failed.
    dpkg: error al procesar acpid (–configure):
    el subproceso post-installation script devolvió el código de salida de error 1
    Se encontraron errores al procesar:
    acpid
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Me pone eso al poner sudo apt-get install phpmyadmin despues de hacer todo lo anterior correcto. Por que sera?

  24. crissconio says:

    @Luis: Saludos Luis, el mensaje que te sale es porque ya tienes el phpmyadmin instalado, no es necesario ejecutar el comando “sudo apt-get install phpmyadmin”..

    Saludos…

  25. Dagoberto Pimentel Vallejo says:

    tengo un problema instale zendserver pero cuando quiero entrar no deja que puedo estar haciendo mal si tengo un so linux ubuntu 10.04

  26. Gadiel says:

    No pude !! instale el phpMyAdmin pero no me funciona el gestor no puedO ver mi base de datos !! que crees lo que tenga que hacer??

Back to Top ↑