Configurar aplicación web
Configura el servidor web, la aplicación y su conexión a la base de datos.
Tu guía paso a paso
- 01
Configura el servidor web, la aplicación y su conexión a la base de datos.
- 02
Lee el ejemplo de referencia. En el laboratorio utiliza los archivos, repositorios y servidores locales precargados.
- 03
Ejecuta los comandos paso a paso, inspecciona el resultado y registra lo que aprendiste antes de completar la lección.
Ejercicio del laboratorio
Estos comandos usan paquetes y servicios precargados dentro del laboratorio. Las referencias de producción originales se conservan abajo.
# Complete the PHP, database and download exercises first.
sudo cp /opt/course/config/nextcloud.apache /etc/apache2/sites-available/nextcloud.conf
printf 'Listen 8081\n' | sudo tee /etc/apache2/conf-available/course-port.conf
sudo a2enconf course-port
sudo a2ensite nextcloud
sudo a2enmod rewrite headers env dir mime setenvif
sudo systemctl restart apache2
sudo -u www-data php /var/www/html/nextcloud/occ maintenance:install --database mysql --database-name course --database-user course --database-pass 'Only-In-This-Lab-42!' --admin-user student --admin-pass 'Only-In-This-Lab-42!' --data-dir /var/www/nextcloud-data
sudo -u www-data php /var/www/html/nextcloud/occ config:system:set trusted_domains 1 --value=cloud.lab
curl http://127.0.0.1:8081/status.phpEjemplo original de referencia
Conservado del taller original en español. En el lab usa los recursos locales.
# Lo primero que hacemos es crear el virtual host para nuestro server usando como
# plantilla el virtualhost por defecto para http
# Primero accedemos a /etc/apache2/apache2.conf
sudo vim /etc/apache2/apache2.conf
# y cambiamos
#
#
#
<Directory /var/www/>
Options FollowSymLinks Indexes
AllowOverride None
Require all granted
</Directory>
#
# a
#
<Directory /var/www/>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
#
# Nótese que lo único que hacemos es remover la directiva Indexes a la carpeta /var/www/
#
# Luego copiamos el virtualhost que viene por defecto para realizar nuestras personalizaciones
#
sudo cp -a /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/nextcloud.conf
#
# Se procede a cambiar la directiva DocumentRoot a /var/www/html/nextcloud en /etc/apache2/sites-available/nextcloud.conf
sudo vi /etc/apache2/sites-available/nextcloud.conf
# Debemos cambiar la directiva DocumentRoot y agregar las directiva <Directory > </Directory> para que queden de la siguiente manera:
#
DocumentRoot /var/www/html/nextcloud
ErrorLog ${APACHE_LOG_DIR}/nextcloud.error
CustomLog ${APACHE_LOG_DIR}/nextcloud.access combined
<Directory /var/www/html/nextcloud/>
Require all granted
Options FollowSymlinks MultiViews
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
Satisfy Any
</Directory>
# Guardar archivo con las teclas Escape mas :wq!
#
#
# Deshabilitamos el sitio activado por defecto
sudo a2dissite 000-default.conf
sudo rm /var/www/html/index.html
#
# Activamos nuestro sitio y activamos los modulos requeridos
sudo a2ensite nextcloud.conf
a2enmod rewrite headers env dir mime setenvif ssl
# Reiniciamos el servicio de apache
sudo systemctl restart apache2
#
# Ahora procedemos a realizar la configuración de nextcloud, necesitaremos la base de datos con el usuario autorizado a usarla y la contraseña y deberemos
# configurar un usuario administrativo para nextcloud, para esto volvemos a acceder a nuestro server a travez del navegador:
# http://IP-SERVER-REMOTO
#Marcar lectura completada
La lectura completada no verifica la ejecución del ejercicio.