Pré-requis
- PHP installé avec une version >= 7.0.0
- L'extension PHP "OpenSSL"
- L'extension PHP pdo_mysql
- L'extension PHP Mbstring
- L'extension PHP Tokenizer
- L'extension PHP XML
- NodeJS installé avec npm
- Une base de données MySQL MariaDB
Installation
Après avoir cloné le projet, et après chaque récupération, il faut penser à :
- Éxecuter la commande
php composer update
- Éxecuter la commande
npm install
- Régler les paramètres d'environnement (voir suite)
- Mettre à jour la base de données avec la commande
php artisan migrate
Environnement
Pour indiquer l'environnement dans lequel on travaille avec Laravel, on utilise le fichier ".env" :
- Si il n'existe pas, renommer le fichier ".env.exemple" en ".env"
- Indiquer les bonnes informations (ici, en développement) :
Cette partie là n'est pas à toucher
APP_NAME=Laravel
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost
On indique ici les informations de base de données
DB_CONNECTION=mysql <--- NE PAS TOUCHER
DB_HOST=127.0.0.1 <--- indiquer l'adresse de la machine SQL
DB_PORT=3306 <--- Indiquer le port SQL
DB_DATABASE=homestead <--- Nom de la base de données du projet
DB_USERNAME=homestead <--- Nom d'utilisateur de la base de données
DB_PASSWORD=secret <--- Mot de passe de la base de données
Accès au pages web
Pour accéder aux projet, il y a deux manières de faire :
- Lancer la commande
php artisan serve
et se rendre sur la page du projet indiquée dans la console - Utiliser un serveur Nginx (sous Linux / MacOS) avec la configuration suivante :
server {
listen 80;
listen [::]:80;
# Bien penser à modifier le fichier host de l'ordinateur
server_name intranet.loc www.intranet.loc;
# Indiquer ici le chemin du projet
root /var/www/html/intranet/public;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
location ~ /\.ht {
deny all;
}
location ~ /.well-known {
allow all;
}
}
Erreur connue en base de données
En cas d'erreur
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
allez dans le dossier app/Providers
et modifiez le fichier AppServiceProvider
ainsi :
// Ne pas oublier d'importer la classe Schema
use Illuminate\Support\Facades\Schema;
public function boot()
{
Schema::defaultStringLength(191);
}