Rechercher une fonction PHP

Nginx 1.4.x sur les systèmes Unix

Cette documentation couvre l'installation et la configuration de PHP avec PHP-FPM pour le serveur HTTP Nginx 1.4.x.

Ce guide suppose que vous avez compilé Nginx à partir des sources et donc tous les binaires et fichiers de configuration se trouvent dans /usr/local/nginx. Si ce n'est pas le cas et que vous avez obtenu Nginx par d'autres moyens, veuillez vous référer au » Wiki d'Nginx pour adapter ce manuel pour votre configuration.

Ce guide couvre les bases de la configuration du serveur Nginx afin de parvenir à servir une application PHP sur le port 80. Il est recommandé d'étudier les documentations d'Nginx et de PHP-FPM afin d'optimiser votre installation.

Veuillez noter que tout au long de cette documentation, les numéros de version ont été remplacé par un "x" pour assurer que cette dernière reste correcte dans l'avenir. Pensez à les remplacer par votre numéro de version.

  1. Il est recommandé de consulter la » documentation de Nginx afin de l'installer sur votre système.

  2. Récupérer et décompresser les sources de PHP :

    tar zxf php-x.x.x
    
  3. Configurer et compiler PHP. Ce sera le moment où vous pourrez personaliser PHP avec diverses options, comme les extensions à activer. Exécuter ./configure --help pour obtenir une liste des options disponibles. Dans notre exemple, vous effectuerons une configuration simple avec le support PHP-FPM et MySQLi.

    cd ../php-x.x.x
    ./configure --enable-fpm --with-mysqli
    make
    sudo make install
    
  4. Récupérer et déplacer les fichiers de configuration dans les bons dossiers

    cp php.ini-development /usr/local/php/php.ini
    cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf
    cp sapi/fpm/php-fpm /usr/local/bin
    
  5. Il est important que vous empéchiez Nginx de passer les requêtes au backend PHP-FPM si le fichier n'existe pas, évitant ainsi les failles par injections arbitraires de scripts.

    Nous pouvons réaliser cela en définissant la directive de configuration cgi.fix_pathinfo à la valeur 0 dans votre php.ini.

    Editer php.ini :

    vim /usr/local/php/php.ini
    

    Trouver la directive cgi.fix_pathinfo= et modifier là comme ceci :

    cgi.fix_pathinfo=0
    
  6. Le fichier php-fpm.conf doit être modifié pour spécifier que php-fpm doit être exécuté avec l'utilisateur www-data et le groupe www-data avant de démarrer le service :

    vim /usr/local/etc/php-fpm.d/www.conf
    

    Trouver et modifier ce qui suit :

    ; Unix user/group of processes
    ; Note: The user is mandatory. If the group is not set, the default user's group
    ;       will be used.
    user = www-data
    group = www-data
    

    Le service php-fpm peut maintenant être démarré :

    /usr/local/bin/php-fpm
    

    Ce guide ne va pas configurer php-fpm plus que cela ; si vous êtes intéressé dans la configuration avancée de php-fpm, veuillez consulter la documentation.

  7. Nginx doit maintenant être configuré pour supporter l'analyse des applications PHP :

    vim /usr/local/nginx/conf/nginx.conf
    

    Modifier le bloc par défaut afin qu'il puisse servir des fichiers .php :

    location / {
        root   html;
        index  index.php index.html index.htm;
    }

    La prochaine étape permet d'assurer que les fichiers .php soient passés au backend PHP-FPM ; Sous le bloc commenté par défaut et entrez :

    location ~* \.php$ {
        fastcgi_index   index.php;
        fastcgi_pass    127.0.0.1:9000;
        include         fastcgi_params;
        fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
    }

    Redémarrer Nginx.

    sudo /usr/local/nginx/sbin/nginx -s stop
    sudo /usr/local/nginx/sbin/nginx
    
  8. Créez un fichier de test

    rm /usr/local/nginx/html/index.html
    echo "<?php phpinfo(); ?>" >> /usr/local/nginx/html/index.php
    

    Maintenant, naviguez vers http://localhost. Le phpinfo() devrait maintenant être affiché.

En suivant ces différentes étapes, vous devriez exécuter un serveur web Nginx avec le support de PHP comme module FPM SAPI. Bien entendu, il y a beaucoup plus d'options de configuration de disponible pour Nginx et PHP. Pour plus d'informations, tapez ./configure --help dans la source correspondante.

Rechercher une fonction PHP

Version en cache

21/11/2024 22:41:14 Cette version de la page est en cache (à la date du 21/11/2024 22:41:14) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-install.unix.nginx.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut