Installer le framework Laravel sur Debian 11

Laravel est un framework web PHP gratuit et open-source basé sur le framework Symfony. Il est utilisé pour le développement plus rapide d’applications Web. Laravel facilite l’exécution de certaines tâches courantes comme l’authentification, le routage, les sessions et la mise en cache. Il possède plusieurs fonctionnalités utiles, notamment Artisan, le mappage objet-relationnel, le moteur de modèles, l’architecture MVC, les tests unitaires et le système de migration des bases de données.

Dans ce tutoriel, je vais te montrer comment installer Laravel sur Debian 11.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un nom de domaine valide pointé avec l’IP de ton serveur.
  • Un mot de passe root est configuré sur le serveur.

Installer le serveur Web Apache

Tout d’abord, tu dois installer le paquet Apache sur ton serveur. Tu peux l’installer à l’aide de la commande suivante :

apt-get install apache2 -y

Une fois le paquetage Apache installé, vérifie la version d’Apache à l’aide de la commande suivante :

apache2ctl -v

Tu devrais voir le résultat suivant :

Server version: Apache/2.4.48 (Debian)
Server built:   2021-08-12T11:51:47

Installer PHP et les autres extensions requises

Ensuite, tu devras installer PHP et les autres extensions requises pour l’application Laravel. Tout d’abord, installe les dépendances requises à l’aide de la commande suivante :

apt-get install apt-transport-https gnupg2 ca-certificates -y

Ensuite, ajoute la clé GPG et le référentiel PHP avec la commande suivante :

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'

Ensuite, mets à jour le référentiel et installe PHP avec les autres extensions à l’aide de la commande suivante :

apt-get update -y
apt-get install libapache2-mod-php php php-common php-xml php-gd php8.0-opcache php-mbstring php-tokenizer php-json php-bcmath php-zip unzip curl -y

Une fois PHP installé, édite le fichier php.ini et apporte quelques modifications :

nano /etc/php/8.0/apache2/php.ini

Change les lignes suivantes :

cgi.fix_pathinfo=0 
date.timezone = Asia/Kolkata

Enregistre et ferme le fichier puis vérifie la version de PHP à l’aide de la commande suivante :

php -v

Exemple de sortie :

PHP 8.0.10 (cli) (built: Aug 26 2021 16:06:19) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.10, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.10, Copyright (c), by Zend Technologies

Installer Composer

Ensuite, tu devras installer le Composer sur ton système. Tu peux l’installer à l’aide de la commande suivante :

curl -sS https://getcomposer.org/installer | php

Exemple de sortie :

All settings correct for using Composer
Downloading...

Composer (version 2.1.6) successfully installed to: /root/composer.phar
Use it: php composer.phar

Ensuite, déplace le binaire de Composer dans le chemin du système à l’aide de la commande suivante :

mv composer.phar /usr/local/bin/composer

Ensuite, vérifie la version de Compsoer à l’aide de la commande suivante :

composer --version

Tu devrais voir le résultat suivant :

Composer version 2.1.6 2021-08-19 17:11:08

Installe Laravel

Ensuite, change le répertoire en webroot Apache et télécharge la dernière version de Laravel en utilisant le Composer :

cd /var/www/html
composer create-project --prefer-dist laravel/laravel laravel

Tu devrais obtenir le résultat suivant :

> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
76 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi
No publishable resources for tag [laravel-assets].
Publishing complete.
> @php artisan key:generate --ansi
Application key set successfully.

Ensuite, définis les autorisations et la propriété appropriées au répertoire Laravel avec la commande suivante :

chown -R www-data:www-data /var/www/html/laravel
chmod -R 775 /var/www/html/laravel

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Configure Apache pour Laravel

Ensuite, tu devras créer un fichier de configuration d’hôte virtuel Apache pour Laravel. Tu peux le créer avec la commande suivante :

nano /etc/apache2/sites-available/laravel.conf

Ajoute les lignes suivantes :

<VirtualHost *:80>
    ServerName laravel.example.com

    ServerAdmin [email protected]
    DocumentRoot /var/www/html/laravel/public

    <Directory /var/www/html/laravel>
    Options Indexes MultiViews
    AllowOverride None
    Require all granted
    </Directory>

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

Sauvegarde et ferme le fichier puis active l’hôte virtuel et le module de réécriture d’Apache avec la commande suivante :

a2enmod rewrite
a2ensite laravel.conf

Enfin, redémarre le service Apache pour appliquer les modifications :

systemctl restart apache2

Tu peux aussi vérifier l’état d’Apache avec la commande suivante :

systemctl status apache2

Tu devrais obtenir la sortie suivante :

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-08-27 06:00:25 UTC; 7s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 14020 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 14025 (apache2)
      Tasks: 6 (limit: 2341)
     Memory: 13.2M
        CPU: 97ms
     CGroup: /system.slice/apache2.service
             ??14025 /usr/sbin/apache2 -k start
             ??14026 /usr/sbin/apache2 -k start
             ??14027 /usr/sbin/apache2 -k start
             ??14028 /usr/sbin/apache2 -k start
             ??14029 /usr/sbin/apache2 -k start
             ??14030 /usr/sbin/apache2 -k start

Aug 27 06:00:25 debian11 systemd[1]: Starting The Apache HTTP Server...

Accède à Laravel

Maintenant, ouvre ton navigateur Web et accède à l’interface Web de Laravel en utilisant l’URL http://laravel.example.com. Tu devrais voir la page par défaut de Laravel sur l’écran suivant :

Laravel sur Debian 11

Conclusion

Félicitations ! Tu as réussi à installer Laravel avec Apache sur Debian 11. Tu peux maintenant commencer à développer ton application à l’aide du framework Laravel. N’hésite pas à me demander si tu as des questions.

Vous aimerez aussi...