Para realizar el hosting correctamente para nuestra raspberry, recordad de abrir el puerto :8080
y puerto :80
de nuestro router.
- Actualizamos las raspberry:
sudo apt-get clean
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot
sudo apt-get install rpi-update
sudo rpi-update
sudo reboot
- Procedemos a instalar Apache:
sudo apt-get install apache2 php7.3 libapache2-mod-php7.3
sudo service apache2 restart
- Realizamos la prueba de acceder mediante la ip de la rasp o si tenemos los puertos abierto mediante la ip publica y aparecerá este mensaje, esto significa que estará todo correcto:
3. Ahora instalamos paquete mysql:
sudo apt-get install mysql-server mysql-client php7.3-mysql phpmyadmin
- Vamos a configurar el mysql:
mysql -u root -p
- Dentro del mysql:
-Creamos la base de datos:
create database wordpress;
-Visualizamos las bases de datos:
show databases;
-Creamos un usuario con su contraseña:
create user usuario identified by 'contraseña';
Donde dice usuario lo cambiamos por el nombre deseada y donde dice contraseña introducimos la contraseña deseada. En el siguiente codigo también.
-Damos todos los permisos de usuario en la BD correspondiente:
grant all PRIVILEGES on wordpress.* to usuario@localhost identified by 'contraseña';
exit;
- Seguridad del mysql:
sudo /usr/bin/mysql_secure_installation
Enter current password for root (enter for none): Change the root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
- Configuramos servidor FTP:
sudo apt-get install vsftpd
Para tener configurado nuestro ftp que ahora editamos el fichero:
nano /etc/vsftpd.conf
Modificamos la entrada anonymous_enable=YES
a anonymous_enable=NO
, descomentaremos las entradas local_enable=YES
y write_enable=YES
, por último agregamos esta línea al final del fichero: force_dot_files=YES
Guardamos lo editado con Ctrl+X, luego "y" y pulsamos enter.
- Reiniciamos el servició de FTP:
sudo service vsftpd restart
El puerto predeterminado es:22
para abrir el puerto en el router
6. Una vez echo todo esto, ya tendremos el directorio `/var/www/`de los cuales dentro tiene que ir la carpeta donde vamos a hospedar nuestra pagina web y con sus permisos necesarios, por ejemplo:
mkdir /var/www/tupaginaweb
chown -R www-data /var/www/tupaginaweb
chmod -R 755 /var/www/tupaginaweb
7.Cuando tengamos la pagina web creada en su carpeta, tenemos que activarla, para ello vamos realizar lo siguiente:
- Copiamos el archivo de .conf predeterminado, para cambiarlo al nombre que nosotros queramos:
cp /etc/apache2/sites-available/default.conf /etc/apache2/sites-available/tupaginaweb.conf
- Ahora procedemos a editarlo:
nano /etc/apache2/sites-available/tupaginaweb.conf
Donde aparece ServerName vamos a introducir nuestro dominió y en DocumentRoot el nombre del directorio donde se encuentra nuestra pagina web:
ServerName tupaginaweb.com ServerAdmin webmaster@localhost DocumentRoot /var/www/tupaginawebGuardamos lo editado con Ctrl+X, luego "y" y pulsamos enter.
- Una vez configurado, solo queda activar la pagina:
a2ensite tupaginaweb.conf
- Reiniciamos el servició:
service apache2 restart
Realizamos la prueba de acceder mediante nuestro dominio y se va a cargar la pagina web correspondiente.
Recordad! El dominio tiene que apuntar a la IP publica de tu router y en tu router el puerto :8080
y :80
tiene que estar abierto
Notas adicionales:
-
Para que nuestro Apache pueda enviar notificaciones vía correo electronico se tiene que realizar la siguiente:
sudo apt-get install ssmtp mailutils mpack
Editamos ficher de configuración, añadiendo el siguiente texto:
nano /etc/ssmtp/ssmtp.conf
- mailhub=smtp.gmail.com:587
hostname=PONEMOS EL NOMBRE DE NUESTRO HOST DE LA RPI
AuthUser=email@gmail.com
AuthPass=PASSWORD
useSTARTTLS=YES
FromLineOverride=YES
- mailhub=smtp.gmail.com:587
-
El archivo PHP.ini que es el archivo para modificar nuestra configuración del apache, se encuentra en:
nano /etc/php5/apache2/php.ini
-
Otro tipo de configuraciones dentro del host también puede realizarse en el siguiente directorio:
nano /etc/apache2/apache2.conf
-
Para visualizar el log de Apache:
tail -f /var/log/apache2/access.log
-
Si cuando accedemos desde navegador a una carpeta de nuestra pagina web, se va a mostrar la raíz de esa carpeta mostrando el contenido de la misma, por defecto Apache lo tiene activado, para desactivar hay que ir al directorio de nuestra pagina web y crear o editar el
.htaccess
nano /var/www/tupaginaweb/.htaccess
Hay que añadir la siguiente linea directamente
Options -Indexes
-
Gestiones PHP
Los mods de php adecuados serian estos:
Saber info:
php -v
Desinstalación:
sudo apt-get purge php5.6-common
-
Saber en que orden apache va lanzar los ".conf":
apache2ctl -S