Laravel sur un hébergement partagé (shared)

Catégorie: Web (Mis à jour le 19-11-2014 21:43:11)

Laravel est devenu de plus en plus influent ces derniéres années. Je vous présente donc un guide pour installer votre application laravel sur un hebergement mutualisé (shared hosting) simplement!

Prérequis

Voici les points à faire attention. Il est conseillé de verifier via le forum ou le phpinfo de votre hebergement que ces caractéritiques sont présentes.

  • PHP 5.5 minimum
  • MCrypt installé
  • Url rewriting actif

Upload FTP

Laravel utilise composer pour installer ses dépendances, sauf que les mutualisés ne proposent pas cette fonctionnalité. Il faut donc installer votre site web en local, y lancer composer update puis uploader le tout sur votre FTP (en incluant le dossier vendor).

Migration de la base de donnée

Comme on ne peux pas non plus utiliser la commande artisan migrate pour génerer notre base de donnée, il faut donc soit la générer en local, puis la transferer via PHPMyAdmin, soit lancer la migration sans la console.

Personnellement, je préfére la seconde solution. L'astuce consiste ici à creer une route secrete (par exemple admin/install) qui va permettre d'installer votre base de donnée.

Un exemple de controlleur:

Ce controlleur, migre la base de donnée lorsqu'on apelle sa route. J'ai rajouté une authentification basique afin de ne pas permettre à n'importe qui de recharger la base de donnée comme ça!

Redirection du repertoire public

Pour ceux qui ne peuvent pas changer le Web root de leur hébergement, voici un htaccess simple qui redirige toutes les requetes vers le routeur de laravel (dossier /public):

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_URI} !^public
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

Cela permet de retirer le dossier public de votre url visible.

Aller plus loin

Comme l'upload FTP peut être long (45 minutes pour 4000 fichiers!), vérifiez si votre hebergeur supporte l'extension ZipArchive (sur Hostinger et Byethost par exemple). Si c'est le cas, uploadez votre site en tant que ZIP, puis extrayez le via un script php tout simple.

Hébergements confirmés

Voici une liste des hebergements qui supportent laravel (testé et confirmé) avec la langue de leur site web et la localisation de leurs serveurs.

Si vous cherchez une alternative plus flexible, je vous conseille de regarder du coté des hébergements cloud.

A lire aussi:

[PHP] [Laravel] Changer le format de date Eloquent

[Web] Voici un petit bout de code bien utile qui permet de changer le format de date retourné par défaut par les modeles Eloquent. Utile pour localiser simplement les dates de son site dynamiquement par exemple.
Suite...

Comment augmenter votre référencement ?

[Web] Les moteurs de recherche représentent une part importante des sources de traffic de n'importe quel site web. Le référencement occupe donc une part importante pour maintenir un site en vie. On peux donc faire appel à des entreprises spécialistes pour booster votre référencement et donc votre nombre de visites.
Suite...