Installation PHP · 4 min read · Jan 23, 2026

Installation de PHP 5.3, Nginx et PHP-fpm sur Ubuntu/Debian

Installation de PHP 5.3, Nginx et PHP-fpm sur Ubuntu/Debian

Version 1.1
Suivez-moi sur Twitter

Puisqu’Apache est souvent un processus gourmand en mémoire, les gens ont commencé à chercher différentes façons d’héberger leur site web. Apache n’est clairement pas le seul serveur web disponible. Quelques bons exemples sont lighttpd et nginx. Dans ce tutoriel, je vais vous montrer comment l’installer sur votre serveur Ubuntu. Ce tutoriel s’applique également à Debian, bien qu’il n’y ait qu’une très petite différence.

Prêt ? Commençons, d’accord.

Étape 0 - Remarques préliminaires

Pour compléter ce tutoriel, je suppose que vous avez installé un système de base de Debian ou Ubuntu. Comment cela peut être fait, peut être lu dans différents tutoriels. Ce tutoriel se concentre uniquement sur le fait de faire fonctionner nginx+php sans trop de tracas.

Étape 1 - Nginx

L’installation de nginx est la première étape que nous devons faire. Cela peut être facilement fait en le téléchargeant depuis le dépôt.

sudo apt-get install nginx

Le vhost par défaut doit être modifié pour fonctionner correctement.

sudo vim /etc/nginx/sites-available/default

Un bon point de départ pour votre configuration est :

server {
    listen   80;
    server_name  localhost;
    access_log  /var/log/nginx/localhost.access.log;

## Emplacement par défaut
    location / {
        root   /var/www;
        index  index.php;
    }

## Les images et le contenu statique sont traités différemment
    location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
      access_log        off;
      expires           30d;
      root /var/www;
    }

## Analyser tous les fichiers .php dans le répertoire /var/www
    location ~ .php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_pass   backend;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_param  QUERY_STRING     $query_string;
        fastcgi_param  REQUEST_METHOD   $request_method;
        fastcgi_param  CONTENT_TYPE     $content_type;
        fastcgi_param  CONTENT_LENGTH   $content_length;
        fastcgi_intercept_errors        on;
        fastcgi_ignore_client_abort     off;
        fastcgi_connect_timeout 60;
        fastcgi_send_timeout 180;
        fastcgi_read_timeout 180;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 4 256k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
    }

## Désactiver la visualisation de .htaccess & .htpassword
    location ~ \/\.ht {
        deny  all;
    }
}  
upstream backend {  
        server 127.0.0.1:9000;  
}  
 

Ok, nous avons terminé ici. Maintenant, nous allons installer les fichiers nécessaires pour PHP.

Étape 2 - Installation de PHP

De nombreux sites dépendent de PHP pour leur fournir du contenu dynamique, que ce soit un wiki, un logiciel de forum, un weblog ou quelque chose de complètement différent.

Si vous utilisez Ubuntu, nous devons d’abord résoudre deux dépendances requises pour les paquets dotdeb. Si vous utilisez la version amd64, vous devez remplacer i386 par amd64.

Pour Debian, vous n’aurez pas à faire cela !

cd /tmp
wget http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_i386.deb
wget http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_i386.deb
sudo dpkg -i *.deb

Encore une fois, cela est uniquement requis si vous êtes sur Ubuntu.

Le reste du tutoriel s’applique à la fois à Ubuntu et à Debian.

Nous devrons ajouter le dépôt dotdeb aux sources APT, afin que nous puissions utiliser leur PHP 5.3 et php-fpm empaquetés :

sudo echo "deb http://php53.dotdeb.org stable all" >> /etc/apt/sources.list

Mettez à jour apt :

sudo apt-get update

Le texte résultant devrait inclure dotdeb.

Maintenant, nous allons installer PHP (partie 1) :

sudo apt-get install php5-cli php5-common php5-suhosin

Nous devons installer le cli avant le reste, car cela causera des problèmes par la suite.

sudo apt-get install php5-fpm php5-cgi

Si vous prévoyez d’utiliser une base de données ou si vous avez besoin de modules spécifiques (mcrypt, ldap, snmp, etc.), vous pouvez les installer également.

Ok, donc maintenant nous avons nginx et PHP.

Une petite remarque : Si vous utilisez “php short tags” (

Étape 3 - Finalisation

Redémarrez nginx afin de prendre en compte les modifications de configuration que nous avons faites précédemment.

sudo /etc/init.d/nginx restart

Le redémarrage devrait s’être effectué sans problèmes.

Après avoir installé php5-fpm, il devrait avoir été démarré. Si vous avez modifié vos fichiers php.ini, vous devez redémarrer php5-fpm.

sudo /etc/init.d/php5-fpm restart

D’accord. Ils devraient maintenant tous deux fonctionner.

Étape 4 - Test

Pour tester si l’exécution de PHP fonctionne, créez un fichier index.php dans /var/www avec le contenu suivant :

Visitez votre serveur web et vous devriez être en mesure de voir le phpinfo généré. Sinon, quelque chose a mal tourné.

Étape 5 - Dépannage et notes finales

Si vous n’avez pas vu le phpinfo, il pourrait y avoir quelque chose de mal. Pour identifier ce qui a mal tourné, vous pouvez vérifier le journal des erreurs de nginx :

sudo tail /var/log/nginx/error.log

N’oubliez pas, si vous avez modifié votre php.ini, vous devez redémarrer php5-fpm. Le redémarrage de nginx n’est pas nécessaire.

Dans ma configuration d’exemple, j’ai activé l’interception des erreurs fastcgi. Si une erreur grave se produit (par exemple, un “cannot redeclare class xyz”), nginx peut capturer cette page et afficher une “jolie” page d’erreur indiquant que quelque chose a mal tourné. De cette façon, moins d’informations sont divulguées en cas de problème sérieux.

Si cela ne vous plaît pas, vous pouvez le désactiver.

Si php5-fpm ne fonctionne pas, vos fichiers PHP ne peuvent pas être analysés et nginx affichera une page d’erreur à l’utilisateur.

Eh bien, je suppose que nous avons terminé et que vous êtes maintenant capable de servir PHP avec votre nouveau serveur web basé sur nginx. Nginx est plutôt agréable et vous pouvez configurer beaucoup de choses. Si vous avez besoin de réécritures, sachez que nginx ne fonctionne pas avec les fichiers .htaccess. Vous devrez modifier vos paramètres de vhost pour que les réécritures fonctionnent.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.