GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Installer Laravel sur Ubuntu pour Nginx

Nous avons déjà parlé de l'installation de Laravel pour les serveurs Ubuntu basés sur Apache dans notre dernier tutoriel. Ce tutoriel vous montrera comment installer le framework PHP Laravel sur une installation de serveur Nginx.

Pré-requis

Comme toujours, vous devez vous assurer que le serveur est bien mis à jour avant de continuer.

sudo apt-get update
sudo apt-get upgrade

Ce didacticiel est basé sur l'hypothèse que vous disposez déjà d'une configuration de serveur basée sur Ubuntu. Assurez-vous également que Git est installé. Si ce n'est pas le cas, vous pouvez suivre notre guide pour le faire.

Installer Nginx

L'installation du serveur Nginx est simple et directe. Alors allons-y.

sudo apt-get install nginx

Installer PHP-FPM

PHP ne fonctionne pas avec Nginx de la même manière qu'avec Apache. Pour Nginx, vous avez besoin de l'implémentation FastCGI de PHP appelée PHP-FPM (PHP-FastCGI Process Manager). Installons PHP alors. Nous avons également besoin de l'extension Mcrypt de PHP pour que Laravel fonctionne.

sudo apt-get install php5-fpm php5-cli php5-mcrypt

Configuration de Nginx pour Laravel

Avant de continuer, procédons à une configuration de base du serveur Nginx que nous avons installé. Nous devons d'abord créer le répertoire où Laravel sera installé.

sudo mkdir -p /var/www/html/laravel

Cela étant fait, nous devons maintenant dire à Nginx que c'est à partir de là que notre site fonctionnera. Pour cela, nous devons créer une entrée virtualhost dans Nginx. Nginx stocke la configuration par défaut dans un fichier nommé default dans /etc/nginx/sites-available/default. Copions-le et créons notre propre version du fichier.

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/laravel

Modifions le fichier de configuration

sudo nano /etc/nginx/sites-available/laravel

Vous verrez quelque chose comme

server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        root /usr/share/nginx/html;
        index index.html index.htm;

        server_name localhost;

        location / {
                try_files $uri $uri/ =404;
        }
}

J'ai supprimé les commentaires pour des raisons de lisibilité. Vous devrez changer l'emplacement racine qui serait /var/www/html/laravel/public dans notre cas. Vous devez également remplacer la variable server_name par le nom de domaine que vous utiliserez ou par l'adresse IP de votre serveur.

Modifiez le fichier pour qu'il ressemble à ce qui suit

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /var/www/html/laravel/public;
    index index.php index.html index.htm;

    server_name server_domain_or_IP;

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

    location ~ \.php$ {
        try_files $uri /index.php =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Enregistrez le fichier après modification. Nous devons maintenant activer ce fichier de configuration. Jusqu'à présent, seul le profil par défaut est actif. Pour ce faire, nous devons créer un lien symbolique vers le fichier laravel dans le répertoire /etc/nginx/sites-enabled. Nous aurions également besoin de désactiver le profil par défaut afin qu'il n'interfère pas avec notre installation de laravel.

sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/ 
sudo rm /etc/nginx/sites-enabled/default

Notre configuration du serveur Nginx est terminée. L'étape suivante consiste à configurer le PHP-FPM.

Configurer PHP-FPM

Cette étape est simple et nous oblige à modifier une variable dans le fichier de configuration de PHP. Il est temps d'ouvrir php.ini

sudo nano /etc/php5/fpm/php.ini

Trouvez-y le texte suivant

;cgi.fix_pathinfo=1

Décommentez la variable en supprimant le; de l'avant et changez sa valeur en 1 pour qu'il ressemble

cgi.fix_pathinfo=0

Cela indique à PHP de ne pas exécuter un script nommé similaire si l'original n'est pas trouvé, ce qui est important du point de vue de la sécurité.

Enfin, nous devons également activer l'extension mcrypt que nous avons installée précédemment.

sudo php5enmod mcrypt

C'est ça. Maintenant, redémarrez simplement le service PHP-FPM pour charger les modifications.

sudo service restart php5-fpm

Installer Composer

Composer est un outil de gestion des dépendances qui nous permet d'installer divers frameworks et bibliothèques PHP via une seule commande. Il prend en charge tous les autres packages et dépendances que vous auriez dû installer séparément pour installer un framework si vous suivez la voie manuelle. Cela peut économiser beaucoup de temps et de tracas. Nous installerions Laravel à l'aide de Composer.

Télécharger Compositeur. Assurez-vous d'abord d'être dans votre répertoire personnel.

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

Cela télécharge le fichier composer.phar dans votre répertoire personnel. Maintenant, si vous le souhaitez, vous pouvez l'exécuter à partir d'ici en utilisant quelque chose comme php composer.phar [commande] mais comme nous préférerions exécuter composer globalement, nous devons le déplacer vers un emplacement plus approprié afin de pouvoir l'exécuter facilement.

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

Vous pouvez maintenant l'exécuter directement en appelant simplement composer de n'importe où.

Installer Laravel

Maintenant que nous avons installé composer, nous devons installer Laravel. Installez-le par la commande suivante.

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

Cela télécharge et installe la dernière version de Laravel (5.2 actuellement) sur votre serveur.

Avant de terminer le didacticiel, nous devons accorder les autorisations appropriées à certains répertoires.

sudo chgrp -R www-data /var/www/html/laravel
sudo chmod -R 775 /var/www/html/laravel/storage

Conclusion

C'est ça. Votre installation de Laravel est terminée. Lancez maintenant http://servername ou http://serverip dans votre navigateur. Vous devriez voir l'écran suivant, en cas de succès.


Ubuntu
  1. Configuration de base de PHP 7 et Nginx sur Ubuntu 16.04 Linux

  2. Guide de base pour l'installation de LAMP sur Ubuntu

  3. Installation de LLMP (Lighttpd, PHP et MySQL) sur Ubuntu 14.10

  4. Installation et configuration de Php et Nginx sur Ubuntu 20.04

  5. Erreur lors de l'installation de Nginx sur Ubuntu 16.04 ?

Installation de Laravel PHP Framework sur Ubuntu 18.04 LTS pour Apache

Nginx 1.7.9 + PHP5-FPM + MySQL (LEMP) sur Ubuntu 14.10

Comment installer Laravel sur Ubuntu 22.04 LTS

Comment installer le framework PHP Laravel avec Nginx sur Ubuntu 20.04

Comment installer le framework PHP Laravel avec Nginx sur Ubuntu Linux

Comment installer Laravel 9 sur Ubuntu 22.04