Cómo crear un sitio web en un servidor apache con Ubuntu
En este artículo vamos a crear un sitio web denominado Web1 dentro de nuestro servidor apache, que sean accesibles desde las URL www.web1.com. Sus directorios raíz estarán situados en /var/www/html/web1.
-
Primero vamos a proceder a la instalación de Apache en nuestra máquina virtual de Ubuntu, para ello escribimos en la terminal de Ubuntu el siguiente comando:
$ sudo apt-get update $ sudo apt-get install apache2 -
Una vez instalado Apache en nuestra máquina virtual de Ubuntu, procederemos a crear el directorio raíz del sitio web en /var/www/html/web1. Para ello escribiremos la siguiente línea de comando en el terminal
$ sudo mkdir /var/www/html/web1 -
Ahora le asignamos los siguientes permisos al directorio creado anteriormente para que sean accesibles por nuestro servidor Apache. Para ello escribimos las siguientes lineas de comando:
$ sudo chown -R www-data:www-data /var/www/html/web1 $ sudo chmod -R 755 /var/www/html/web1 -
A continuación, creamos el archivo index.html en el directorio creado. Escribimos el siguiente comando:
$ sudo nano /var/www/html/web1/index.htmlSe nos abrirá el archivo y escribiremos en él este texto por ejemplo:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Web 1</title> </head> <body> <h1>Esta página es de la Web 1</h1> </body> </html>
Guardamos el contenido y comprobamos si se ha escrito bien, escribiendo el siguiente comando:
cat /var/www/html/web1/index.html -
Si se ha creado correctamente el archivo, comenzaremos con la configuración de nuestro servidor Apache, para ello crearemos un archivo de configuración de Apache en /etc/apache2/sites-available/ para nuestro sitio web. Escribimos la siguiente línea de comando:
sudo nano /etc/apache2/sitesavailable/web1.confLuego agregamos el siguiente contenido :
<VirtualHost *:80> ServerName www.web1.com ServerAlias web1.com DocumentRoot /var/www/html/web1 ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
-
Seguidamente, habilitamos nuestro sitio web ejecutando el siguiente comando:
sudo a2ensite web1.conf -
Por último, es necesario reiniciar nuestro servidor Apache para que los cambios tengan efecto, ejecutamos la siguiente línea de comando:
sudi systemctl restart apache2 -
Si al ejecutar el comando anterior sale algún error, te indicará que fichero es el que está mal escrito y puede que hasta el error. Si no nos dice que error es, podemos escribir este comando:
sudo apache2ctl configtestNos dirá que error tenemos, si tenemos el siguiente error “Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message”. Escribimos en el terminal
sudo nano /etc/apache2/apache2.confY escribimos en la última línea del archivo que nos va a aparecer, el siguiente texto:
Server 127.0.0.1 -
A continuación, comprobamos que no tengamos ningún error escribiendo el sigueinte comando en el terminal
sudo apachectl configtest -
Una vez solucionado los errores, vamos a agregar los nombres de dominio en su archivo hosts , con el siguiente comando:
sudo nano /etc/hostsY escribimos:
127.0.0.1 www.web1.com -
Por último volvemos a reiniciar apache
sudo systemctl reload apache2
Con estos pasos, nuestro sitio web Web1 estará configurado y será accesible desde la URL www.web1.com.