Instal·lació


Instal·lació de dependències

  1. Instal·lar Composer 2.2
    https://getcomposer.org/download/

  2. Instal·lar PHP 8.2
    https://www.php.net/downloads.php

  3. Instal·lar Laravel 10
    https://laravel.com/docs/10.x/installation


Instal·lació del projecte

  1. Clonar el repositori

    git clone git@github.com:eduayme/RescueApp.git
  2. Crear un nou fitxer .env dins de la carpeta del projecte amb el mateix contingut del fitxer .env.example

    cp .env.example .env
  3. Instal·lar dependències del projecte

    composer install
  4. Generar la clau de l’aplicació

    php artisan key:generate

Instal·lació de la base de dades

Opció 1) MySQL

  1. Instal·lar MySQL 8.0
    https://dev.mysql.com/doc/mysql-installation-excerpt/8.0/en/

  2. Crear la base de dades aplicatiu_bombers a MySQL

    CREATE DATABASE aplicatiu_bombers;
  3. Canviar credencials de MySQL a .env

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=aplicatiu_bombers
    DB_USERNAME=mysql_username
    DB_PASSWORD=mysql_password

Opció 2) PostgreSQL

  1. Instal·lar PostgreSQL 15
    https://www.postgresql.org/download/

  2. Crear la base de dades aplicatiu_bombers a PostgreSQL

    CREATE DATABASE aplicatiu_bombers;
  3. Canviar credencials de PostgreSQL a .env

    DB_CONNECTION=pgsql
    DB_HOST=127.0.0.1
    DB_PORT=5432
    DB_DATABASE=aplicatiu_bombers
    DB_USERNAME=postgresql_username
    DB_PASSWORD=postgresql_password

Instal·lació de la configuració pels emails

Opció 1) Gmail via SMTP

  1. Crear compte de Gmail

  2. Anar a opcions de seguretat del compte
    https://myaccount.google.com/security?pli=1#connectedapps

  3. Configurar una contrasenya d’aplicació (recomanat) o mètode SMTP equivalent, i actualitzar les credencials a .env

    MAIL_MAILER=smtp
    MAIL_HOST=smtp.gmail.com
    MAIL_PORT=587
    MAIL_USERNAME=gmail_username
    MAIL_PASSWORD=gmail_app_password
    MAIL_ENCRYPTION=tls
    MAIL_FROM_ADDRESS="noreply@example.com"
    MAIL_FROM_NAME="RescueApp"

Fer funcionar l'aplicació

  1. Migrar la base de dades

    php artisan migrate
  2. (Opcional) Executar seeders si el projecte en té

    php artisan db:seed
  3. Fer córrer l'aplicació

    php artisan serve
  4. Obrir un navegador i dirigir-se a http://127.0.0.1:8000 o http://localhost:8000

  5. RescueApp funcionant!


Configuració pel servidor

Exemple d'instal·lació en el subdomini RescueApp.mysite.com

Opció 1) Apache2

  1. Descarregar Apache2
    https://help.ubuntu.com/lts/serverguide/httpd.html#Installation

  2. Configurar els registres tipus "A" al DNS pel teu subdomini com ho requereix el teu proveïdor

  3. Configurar /etc/apache2/sites-enabled/RescueApp.conf adaptant el codi a les teves necessitats: ServerName, DocumentRoot, paràmetres SSL, etc. Exemple:

    <VirtualHost *:80>
    ServerName RescueApp.mysite.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/Rescue-app/public
    
    <Directory /var/www/html/Rescue-app>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    RewriteEngine on
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
    </VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName RescueApp.mysite.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/Rescue-app/public

    <Directory /var/www/html/Rescue-app>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

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

    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile /etc/letsencrypt/live/mysite.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/mysite.com/privkey.pem
</VirtualHost>
</IfModule>