14 Jul

LAMP (Linux Apache MySQL PHP5) en Debian y Virtual Hosts

Revivi mi portátil le instale Debian. Voy a instalar un entorno para desarrollo web en Linux, no estoy considerando seguridad ni rendimiento…

Actualizo los repositorios.

sudo apt-get update

Instalación de software necesario (apache, MySQL, PHP ):

sudo apt-get install apache2 mysql-server php5 php5-mysql

El sistema va a solicitar la contraseña de root (de MySQL obviamente) y su confirmación.

Activar modulos de apache Mod Rewrite (Lo utilizan wordpress, joomla, drupal y otros cms) y Vhosts Alias para simular nombres de dominio en local.

sudo a2enmod rewrite vhost_alias

Crear directorios para un sitio.

sudo mkdir /var/www/dominio.com
sudo mkdir /var/www/dominio.com/web
sudo mkdir /var/www/dominio.com/logs

Cambiar propietario y grupo del directorio.

sudo chown -R $USER:$USER /var/www/dominio.com

Permisos de lectura y escritura.

sudo chmod -R 745 /var/www/dominio.com/web

Apache provee un archivo de ejemplo de los hosts virtuales llamado 000-default.conf:

#Este es el mio
<VirtualHost *:80>
        ServerName ejemplo.com

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

Lo tomo como plantilla:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/dominio.com.conf

Modifico el archivo de configuración, debe quedar así:

<VirtualHost *:80>
        ServerName  dominio.com
        ServerAlias www.dominio.com
        ServerAdmin webmaster@dominio.com
        DocumentRoot /var/www/dominio.com/web
        ErrorLog     /var/www/dominio.com/logs/error.log
        CustomLog    /var/www/dominio.com/logs/access.log combined
        <Directory "/var/www/dominio.com/web">
                AllowOverride All
                Allow from all
        </Directory>
</VirtualHost>

Más info lee la documentación de apache.

Activo el virtual host.

sudo a2ensite dominio.com.conf

Por último agrego esta linea a mi archivo /etc/hosts

127.0.1.1       dominio.com

Para crear mas sitios se debe repetir el proceso desde la creación del directorio, sustituyendo dominio.com por el nombre de dominio que quieres utilizar.

5 thoughts on “LAMP (Linux Apache MySQL PHP5) en Debian y Virtual Hosts

  1. Pingback: Instalar MAMP (Mac OS X, Apache, MySQL y PHP5) en OS X Yosemite | elhui2

  2. Excelente nota!!!
    No soy un newby pero no tenía ganas de acordarme de todo el proceso y me vino excelente este apunte para hacer toda la instalación en 5 minutos!!!

    Abrazo grande desde el culo del mundo (Buenos Aires – Argentina) XD

Deja un comentario

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

Eres un robot? *