Prérequis
Connaissances de base en PHP et Laravel :
Compréhension des concepts fondamentaux de PHP.
Familiarité avec le framework Laravel, y compris la structure des fichiers et les routes.
Accès à un compte d'hébergement mutualisé :
Avoir un compte actif sur Hostinger ou un autre hébergeur mutualisé.
Accès au gestionnaire de fichiers ou à un client FTP pour manipuler les fichiers.
Configuration de l'environnement :
Avoir une installation de Laravel fonctionnelle sur votre serveur.
Vérification que les permissions des dossiers sont correctement configurées pour permettre la création de liens symboliques.
Navigateur web :
Utiliser un navigateur pour tester les routes créées et vérifier les résultats.
Public Cible
Développeurs débutants à intermédiaires :
Ceux qui commencent à utiliser Laravel et souhaitent comprendre comment gérer les fichiers et les liens symboliques sur un hébergement mutualisé.
Propriétaires de sites web :
Les utilisateurs qui gèrent leurs propres sites web sur Hostinger et ont besoin d'implémenter des fonctionnalités spécifiques de Laravel.
Étudiants en développement web :
Les étudiants qui apprennent Laravel et PHP et qui cherchent des exemples pratiques d'utilisation sur un hébergement mutualisé.
Freelancers et petites entreprises :
Les freelances ou propriétaires de petites entreprises qui créent des applications web avec Laravel et qui ont besoin d'une solution simple pour gérer le stockage de fichiers sur un hébergement partagé.
Étape 1 : Supprimer le dossier public/storage
Dans votre gestionnaire de fichiers Hostinger :
Ouvrez le dossier
public_html.Vérifiez s'il y a un dossier
storage.SI OUI → supprimez-le entièrement.
⚠ Remarque : Laravel NE PEUT PAS créer un symlink si un dossier existe déjà, ce qui entraîne l'erreur "No such file or directory".
Étape 2 : Créer une route pour exécuter php artisan storage:link
Ajoutez le code suivant dans routes/web.php :
Route::get('/linkstorage', function () {
try {
\Illuminate\Support\Facades\Artisan::call('storage:link');
return "✔️ Lien symbolique créé avec succès !";
} catch (\Exception $e) {
return "❌ Erreur : " . $e->getMessage();
}
});Redeployer votre application web. Ensuite, ouvrez dans votre navigateur :
https://ton-domaine.com/linkstorageCela exécutera automatiquement la commande artisan storage:link.
Le resultat : ✔ Lien symbolique créé avec succès !
➡ C'est la méthode recommandée pour Hostinger sans SSH.
Si cela affiche une erreur ❌ → passez à l’ÉTAPE 3.
Étape 3 : Créer le symlink manuellement en PHP (compatible Hostinger)
Collez ce code TEMPORAIREMENT dans routes/web.php :
Route::get('/linkstorage-manual', function () {
$target = storage_path('app/public'); // → dossier réel
$link = public_path('storage'); // → lien dans public_html
if (!file_exists($target)) {
return "❌ Le dossier cible n'existe pas : $target";
}
if (file_exists($link)) {
return "❌ Le dossier/lien public/storage existe déjà. Supprimez-le puis réessayez.";
}
symlink($target, $link);
return "✔️ Symlink créé : $link → $target";
});Puis visitez :
https://ton-domaine.com/linkstorage-manual✔ Ceci fonctionne sur Hostinger tant que les chemins sont corrects.
Étape 4 : Vérifier les chemins réels
Si ça échoue encore, voici la vérification automatique. Collez ceci dans routes/web.php :
Route::get('/debug-path', function () {
return [
'base_path' => base_path(),
'public_path' => public_path(),
'storage_path' => storage_path(),
'storage_public' => storage_path('app/public'),
];
});Visitez :
https://ton-domaine.com/debug-pathRésumé
Étape | Action |
|---|---|
1 | Supprimer |
2 | Tester |
3 | Tester |
4 | Si encore erreur → |
N'hésitez pas à me faire savoir en commentaire si vous avez besoin de plus d'aide !
Application d'un projet en ligne pour envoyer le partenariat et insérer le logo d'entreprise
Je vous présente un projet de démonstration que j'ai appliqué pour vous donner un retour sur l'article concernant l'envoi de partenariats et l'insertion du logo d'entreprise. Vous pouvez consulter le projet à l'adresse suivante : https://laravel.cfpcanadienne.com/






