GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer et configurer un serveur LEMP (Nginx, MySQL et PHP) sur un VPS Debian 6 (squeeze)

Nginx est un serveur HTTP gratuit, open-source et hautes performances qui, contrairement à ses "amis", ne repose pas sur la gestion des requêtes par thread, mais utilise à la place une architecture pilotée par les événements (asynchrone) beaucoup plus évolutive. Cela utilise une quantité de mémoire très petite et prévisible sous une charge importante. Nginx, associé au gestionnaire de processus FastCGI simple et très robuste pour PHP (PHP-FPM) et au serveur de base de données MySQL le plus populaire au monde, peut vous offrir beaucoup de puissance et de performances tout en utilisant une petite empreinte mémoire.

L'article suivant explique comment installer et configurer cette pile sur l'un de nos VPS basés sur Debian.

1. Tout d'abord, assurez-vous que votre VPS Debian est entièrement à jour en exécutant ce qui suit :

# apt-get update && apt-get -y upgrade --show-upgraded

2. Ensuite, afin d'avoir les derniers Nginx, PHP et MySQL stables dans votre système Debian, nous devons inclure le référentiel DotDeb dans vos sources.

# echo -e "deb http://packages.dotdeb.org squeeze all" >> /etc/apt/sources.list

3. Maintenant que nous avons ajouté le dépôt aux sources, nous devons importer sa clé GPG . Pour ce faire, exécutez l'instruction suivante :

# gpg --keyserver keys.gnupg.net --recv-key 89DF5277 && gpg -a --export 89DF5277 | apt-key add -

– Vous devriez obtenir quelque chose comme la sortie ci-dessous :
gpg :requête de la clé 89DF5277 depuis le serveur hkp keys.gnupg.net
gpg :clé 89DF5277 :clé publique « Guillaume Plessis » importée
gpg :aucune clé finalement fiable trouvée
gpg :nombre total traité :1
gpg :importé :1 (RSA :1)
OK

4. Maintenant, le référentiel DotDeb est entièrement configuré, nous devons donc actualiser les sources en exécutant :

# apt-get update

- Si vous avez un serveur Web Apache en cours d'exécution sur votre système, vous devez l'arrêter et le désactiver afin que Nginx puisse être démarré ultérieurement. Pour ce faire, lancez la commande suivante :

# [[ $(pgrep apache2) ]] && service apache2 stop && update-rc.d -f apache2 disable

5. Installez la pile LEMP (Linux Nginx MySQL et PHP) en exécutant les commandes suivantes :

# apt-get -y install nginx
# apt-get -y install php5-fpm php5-gd php5-curl php5-mysql
# apt-get -y install mysql-server

6. Ensuite, configurez une simple directive d'hôte virtuel nginx. Pour cela, créez un nouveau fichier de configuration dans ‘/etc/nginx/sites-available/example’ en utilisant votre éditeur préféré :

server {
    server_name example.com www.example.com;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log error;

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

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param  REQUEST_URI    $request_uri;
        fastcgi_param  DOCUMENT_URI   $document_uri;
        fastcgi_param  DOCUMENT_ROOT  $document_root;
        fastcgi_param  REMOTE_ADDR    $remote_addr;
        fastcgi_param  REMOTE_PORT    $remote_port;
        fastcgi_param  SERVER_ADDR    $server_addr;
        fastcgi_param  SERVER_PORT    $server_port;
        fastcgi_param  SERVER_NAME    $server_name;
        fastcgi_param  QUERY_STRING   $query_string;
        fastcgi_param  REQUEST_METHOD $request_method;
        fastcgi_param  CONTENT_TYPE   $content_type;
        fastcgi_param  CONTENT_LENGTH $content_length;

        ## prevent php version info
        fastcgi_hide_header X-Powered-By;
    }
}

assurez-vous de remplacer "exemple.com" par le nom de domaine souhaité. N'hésitez pas non plus à définir la racine du document et les chemins d'accès au journal à votre guise.

7. Une fois le fichier de configuration vhost créé, nous devons l'activer. Cela peut être fait en ajoutant un lien symbolique de la directive vhost nouvellement créée à '/etc/nginx/sites-enabled/'. Exécutez donc :

# ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/

8. Avec tout cela en place, nous sommes prêts à démarrer les services. Exécutez la commande suivante afin de recharger vos serveurs Nginx, PHP et MySQL :

# for s in nginx php5-fpm mysql; do service $s restart; done

9. Maintenant, créez une page d'informations PHP de test afin que nous puissions tester si tout va bien.

# echo -e "<?php\n\tphpinfo();\n?>" > /var/www/info.php
# chown -R www-data: /var/www/

Naviguez maintenant vers ‘http://example.com/info.php’ et vous devriez voir la page d'informations intégrée de PHP.

C'est une bonne idée et recommandé d'installer un moteur de cache afin d'optimiser et de faire fonctionner les choses plus rapidement. Le cache PHP-APC peut considérablement améliorer les performances, alors installez-le en :

# apt-get -y install php5-apc && service php5-fpm restart

Les paramètres APC par défaut sont corrects, mais bien sûr, la personnalisation des options peut considérablement accélérer les choses, alors restez à l'écoute car dans certains des prochains articles, nous approfondirons l'optimisation de la pile LEMP afin que vous puissiez bénéficier de son utilisation sur votre réseau privé virtuel. serveur.

PS. Si vous avez aimé cet article, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.


Debian
  1. Comment installer et configurer OpenVPN Server sur Debian 10

  2. Comment installer et configurer le serveur VNC sur Debian 10

  3. Comment installer et configurer PHP et Nginx (LEMP) sur Debian 11

  4. Comment installer LEMP (Linux, Nginx, MySQL &PHP-FPM) sur un VPS Debian 8

  5. Comment installer la pile LEMP Nginx, MySQL, PHP sur Debian 11

Comment installer et configurer le serveur Web Apache sur Debian 11

Comment installer et configurer NextCloud sur Debian 11 et LEMP

Comment installer phpBB avec LEMP (Nginx, MariaDB et PHP) sur Debian 11 Bullseye

Comment installer Nginx et PHP sur Debian 10

Comment installer Nginx, MySQL et PHP (LEMP) sur un serveur Ubuntu 15.04

Comment installer la pile Nginx, MySQL, PHP (LEMP) sur un serveur cloud Debian 8.3