Aller au contenu principal

Problèmes Courants et Solutions

Un guide complet des problèmes les plus courants et de leurs solutions.


Problèmes d'installation

Page blanche après l'installation

Cause : Généralement un problème de permissions de fichiers.

Solution :

# Vérifier le journal Laravel
tail -50 storage/logs/laravel.log

# Corriger les permissions
sudo chmod -R 775 storage bootstrap/cache
sudo chown -R www-data:www-data storage bootstrap/cache

Erreurs "Class Not Found"

Cause : Dépendances Composer non installées ou autoloader non généré.

Solution :

composer install --no-dev --optimize-autoloader
php artisan config:clear

L'installateur affiche "Déjà installé"

Cause : Le fichier storage/installed.lock existe.

Solution : Si vous devez relancer l'installateur :

rm storage/installed.lock

Puis visitez à nouveau /install.

CSS/JS ne se charge pas (page sans style)

Cause : Lien symbolique de stockage manquant ou problème de chemin d'accès aux ressources.

Solution :

php artisan storage:link
php artisan config:clear
php artisan view:clear

Vérifiez également que votre APP_URL dans .env correspond à votre domaine réel (y compris https://).


Problèmes de base de données

"SQLSTATE[HY000] [2002] Connection Refused"

Cause : MySQL n'est pas en cours d'exécution ou l'hôte est incorrect.

Solution :

  • Vérifiez que MySQL fonctionne : sudo systemctl status mysql
  • Essayez 127.0.0.1 plutôt que localhost dans .env
  • Vérifiez le port (par défaut : 3306)

"SQLSTATE[HY000] [1045] Access Denied"

Cause : Identifiants de base de données incorrects.

Solution :

  • Vérifiez le nom d'utilisateur/mot de passe dans .env
  • Testez la connexion : mysql -u your_user -p your_database
  • Réaccordez les permissions :
GRANT ALL PRIVILEGES ON feedbackpulse.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;

Emojis affichés comme ????

Cause : Le jeu de caractères de la base de données est utf8 au lieu de utf8mb4.

Solution :

ALTER DATABASE feedbackpulse CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Problèmes de serveur web

Toutes les routes renvoient 404

Solution Apache :

sudo a2enmod rewrite
sudo systemctl restart apache2

Assurez-vous que AllowOverride All est défini dans votre hôte virtuel.

Solution Nginx : Assurez-vous que votre bloc serveur contient :

location / {
try_files $uri $uri/ /index.php?$query_string;
}

502 Bad Gateway (Nginx)

Cause : PHP-FPM ne fonctionne pas ou le chemin du socket est incorrect.

Solution :

sudo systemctl restart php8.4-fpm
# Vérifier le chemin du socket
ls /var/run/php/php8.4-fpm.sock

413 Request Entity Too Large

Cause : Limite de taille d'upload trop basse.

Solution (Nginx) :

client_max_body_size 20M;

Solution (PHP) :

upload_max_filesize = 20M
post_max_size = 25M

Problèmes d'authentification

"CSRF Token Mismatch" (Erreur 419)

Cause : Session expirée ou problème de cookies.

Solution :

  • Videz les cookies du navigateur et réessayez
  • Vérifiez SESSION_DOMAIN dans .env (définissez .yourdomain.com pour les sous-domaines)
  • Assurez-vous que SESSION_SECURE_COOKIE=true uniquement si vous utilisez HTTPS

Impossible de se connecter après la réinitialisation du mot de passe

Cause : Le navigateur a mis en cache l'ancienne session.

Solution : Videz les cookies du navigateur ou utilisez le mode navigation privée.

La connexion sociale renvoie une erreur

Cause : Incompatibilité de l'URL de callback.

Solution : Assurez-vous que l'URL de callback dans la console Google/GitHub correspond exactement à :

  • Google : https://yourdomain.com/auth/google/callback
  • GitHub : https://yourdomain.com/auth/github/callback

Problèmes de paiement

Consultez Problèmes de passerelle de paiement pour un dépannage détaillé des paiements.


Problèmes d'e-mail

Consultez E-mails non envoyés pour un dépannage détaillé des e-mails.


Problèmes de performances

Consultez Optimisation des performances pour des conseils d'optimisation.


Problèmes de cache

En cas de doute, videz tous les caches :

php artisan optimize:clear

Cela vide :

  • Le cache de configuration
  • Le cache des routes
  • Le cache des vues
  • Le cache de l'application
  • Le cache des classes compilées

Mode débogage (temporaire)

Pour voir les messages d'erreur détaillés :

  1. Modifiez .env :
APP_DEBUG=true
LOG_LEVEL=debug
  1. Reproduisez l'erreur
  2. Consultez la page d'erreur ou storage/logs/laravel.log
  3. Immédiatement remettez APP_DEBUG=false une fois terminé !
attention

Ne laissez jamais APP_DEBUG=true en production. Cela expose des informations sensibles.


Obtenir de l'aide

Si aucune des solutions ci-dessus ne résout votre problème :

  1. Consultez storage/logs/laravel.log pour la trace d'erreur complète
  2. Consultez le journal d'erreurs de votre serveur web (/var/log/nginx/error.log ou /var/log/apache2/error.log)
  3. Recherchez des problèmes similaires dans les commentaires de l'article CodeCanyon
  4. Ouvrez un ticket de support avec :
    • Le message d'erreur (depuis le journal)
    • La version PHP (php -v)
    • La version Laravel
    • Les détails du serveur (OS, serveur web, version MySQL)
    • Les étapes pour reproduire le problème