Nginx vs Apache : meilleur serveur Web pour WordPress ?

Pour exécuter un site Web WordPress, vous devez l’héberger sur un serveur Web. C’est ce qui permet aux navigateurs Web de demander les données de votre site. Cependant, il existe plusieurs options de serveur Web, ce qui peut rendre le choix d’une tâche intimidante.

Bien qu’il existe de nombreux serveurs Web parmi lesquels choisir, Apache et NGINX sont les options les plus populaires. Ces deux serveurs Web gèrent plus de 50% de tout le trafic Web. Bien qu’ils partagent de nombreuses qualités, il existe des différences que vous devez savoir et qui peuvent vous aider à choisir la bonne pour votre site.

Dans cet article, nous allons discuter des différences entre NGINX et Apache. Nous verrons ensuite comment vous pouvez installer WordPress sur les deux types de serveurs. Commençons !

Comparaison des performances: NGINX vs Apache

Comme nous l’avons mentionné précédemment, NGINX et Apache sont les options de serveur Web les plus importantes. Ils sont à la fois capables de gérer diverses charges de travail et de travailler avec d’autres logiciels pour former des piles LAMP et LEMU. Cependant, pour comparer avec précision ces serveurs Web, vous devez comprendre en quoi ils diffèrent.

Apache

Apache est le plus ancien des deux serveurs et a été publié pour la première fois en 1995 par Robert McCool. Depuis 1996, Apache est le premier serveur Web et il est utilisé par environ 38,7% des sites Web.

Apache offre une gamme d’avantages, notamment:

  • Options de préinstallation : Apache est préinstallé sur les principales distributions Linux.
  • Communauté d’utilisateurs: Apache dispose d’une grande communauté d’utilisateurs qui se prêtent mutuellement assistance.
  • Système de chargement de module dynamique : Ce système vous empêche de toucher le package principal lors de la mise à jour du serveur.
  • URL réécrite dans.htaccess: Apache 2 utilise mod_rewrite pour des réécritures propres
  • Conception modulaire : Apache offre une plus grande personnalisation et flexibilité grâce à la conception modulaire.
  • Configuration du serveur à l’aide du fichier : La configuration est facile, car vous n’avez pas besoin d’accéder au fichier principal apache2.conf

Apache est un serveur Web convivial avec de nombreuses fonctionnalités de personnalisation. Le logiciel est également compatible avec les serveurs Unix et Windows.

Nginx

NGINX a été publié en 2004 par Igor Szsoev pour résoudre le problème C10K. C’est le défi auquel sont confrontés les serveurs Web lorsqu’ils gèrent 10 000 connexions simultanées ou plus.

Pour résoudre ce problème, NGINX a été développé comme une architecture asynchrone, non bloquante et basée sur les événements. C’est l’une des principales différences entre NGINX et Apache. C’est également l’une des raisons pour lesquelles environ 32,1% des sites Web utilisent NGINX.

NGINX offre de nombreux autres avantages, tels que :

  • Conception légère : NGINX peut fonctionner avec un minimum de matériel et utilise moins de mémoire qu’Apache.
  • Gestion de contenu statique : NGINX offre une meilleure gestion du contenu statique lorsqu’il est correctement configuré.
  • Réactivité de charge lourde : NGINX reste très réactif en cas de trafic important.
  • Conception conviviale : La courbe d’apprentissage est plus facile et NGINX est adapté aux débutants.
  • Configuration modulaire : La conception de ce serveur permet des versions flexibles et une gamme de modules tiers.

NGINX est souvent considéré comme une meilleure option pour les sites Web à fort trafic, car il peut gérer de lourdes charges. Il est également idéal pour maintenir des performances optimales sur des sites avec beaucoup de contenu statique.

Quelle est la différence entre Apache et NGINX ?

Bien que NGINX et Apache soient similaires, il existe de nombreuses différences entre les deux. La plus grande distinction est la façon dont ces serveurs Web traitent les demandes. Apache utilise une solution fourchue, tandis que NGINX utilise une boucle d’événements non bloquante.

Apache fournit des modules de multi-traitement (MPM) qui dictent le fonctionnement du traitement des demandes. L’approche fourchue facilite l’échange de l’architecture de gestion des connexions. Les modules utilisés dans cette approche sont des ajouts aux fonctionnalités de base d’Apache. Chaque module démarre un processus différent pour gérer les demandes du serveur.

Un exemple est mpm-worker, qui est un module qui crée des processus gérant plusieurs threads. Chaque thread est une connexion unique au serveur. L’ajout de ce module permet la mise à l’échelle du serveur et permet la gestion de grandes quantités de trafic.

NGINX est différent et ne génère que des processus de travail pour le traitement simultané des demandes. Ces processus sont des événements non bloquants qui vérifient et traitent en permanence les demandes. Cette vérification continue crée une boucle. Tous les événements de la boucle sont asynchrones et sont supprimés de la boucle à la fermeture de la connexion.

Quel est le meilleur logiciel de serveur Web WordPress ?

Apache et NGINX fonctionnent bien avec WordPress. Cependant, NGINX pourrait être la meilleure option si vous souhaitez améliorer les performances. Voyons comment installer WordPress sur les deux types de serveurs, vous serez donc prêt à commencer avec l’un ou l’autre.

Comment installer WordPress sur Apache

Pour installer WordPress sur Apache, vous devrez configurer une pile LAMP (Linux, Apache, MySQL et PHP). Cela se fait généralement sur un serveur Ubuntu.

Étape 1 : créer un utilisateur Sudo sur votre serveur

Pour créer un utilisateur.:

$ adduser nom d’utilisateur

Le serveur vous demandera de définir et de confirmer un mot de passe. Ensuite, remplissez les détails de l’utilisateur. Ensuite, vous pouvez fournir un accès sudo à cet utilisateur. Cet accès permet à l’utilisateur d’exécuter des commandes normalement exécutées par l’utilisateur root.

Pour ajouter l’utilisateur à un groupe sudo, entrez la commande suivante :

$ usermod -aG sudo nom d’utilisateur

Ensuite, vous souhaiterez vous connecter au serveur en tant qu’utilisateur sudo pour le reste du processus d’installation.

Étape 2 : installer le serveur Web Apache

Pour installer Apache, vous devrez utiliser le gestionnaire de paquets Ubuntu apt. C’est la valeur par défaut sur les serveurs Ubuntu. La saisie de la commande sudo suivante démarre l’installation après avoir entré votre mot de passe :

$ sudo apt update

$ sudo apt install apache2

Vous verrez alors les packages qui seront installés et l’espace disque requis. Appuyez sur Y puis sur Entrée pour démarrer l’installation.

Étape 3 : installer le serveur de base de données MySQL

Ensuite, vous devrez installer le système de gestion de base de données MySQL. La commande suivante dans le gestionnaire de packages démarrera l’installation :

$ sudo apt install mysql-server

Les packages et l’espace disque requis seront à nouveau affichés. Pour démarrer l’installation, appuyez sur Y et définissez le mot de passe root.

Étape 4 : installez PHP

PHP est la partie de votre pile LAMP qui traite le code en contenu dynamique. Pour l’installer, vous devez entrer la commande suivante :

$ sudo apt install php libapache2-mod-php php-mysql

PHP devrait alors s’installer sans aucun problème. Vous devrez redémarrer le serveur pour terminer l’installation de la pile. Pour ce faire, entrez la commande suivante :

$ sudo systemctl restart apache2

Votre pile LAMP est maintenant installée et configurée.

Étape 5 : configurer des hôtes virtuels

Les hôtes virtuels encapsulent les détails de configuration et sont une étape recommandée. L’encapsulation vous permet d’héberger plusieurs sites Web sur un serveur.

Les serveurs Apache utilisent par défaut les répertoires / var / www / html qui sont peu maniables pour plusieurs sites Web. Pour créer un hôte virtuel, vous devez configurer une structure de répertoires dans / var / www pour le domaine du nouveau site Web.

sudo mkdir / var / www / nouveau_domaine

Remplacez new_domain par le domaine de votre site Web. Créez ensuite un fichier index.html avec un exemple de contenu à l’aide de la commande nano :

$ nano /var/www/new_domain/index.html

Pour vous assurer qu’Apache diffuse votre contenu, vous devez également créer un fichier hôte. La commande suivante crée le fichier de configuration :

$ sudo nano /etc/apache2/sites-available/your_domain.conf

Ajoutez ensuite le bloc de configuration suivant:

ServerAdmin [email protected]

ServerName nouveau_domaine

ServerAlias ​​www.new_domain

DocumentRoot / var / www / nouveau_domaine

/error.log

/access.log combiné

La commande suivante active le fichier, tandis que la seconde désactive le site par défaut sur le serveur :

$ sudo a2ensite new_domain.conf

$ sudo a2dissite 000-default.conf

Votre hôte virtuel devrait maintenant être configuré et fonctionner. Ce répertoire nouvellement créé doit être utilisé pour installer WordPress.

Étape 6 : installez WordPress

Après avoir configuré votre pile LAMP, vous pouvez installer WordPress.

$ sudo apt update

$ sudo apt install wordpress php libapache2-mod-php mysql-server php-mysql

Ensuite, configurez Apache pour WordPress et créez la base de données MySQL. Cela comprend la création d’un titre de site et la définition d’un mot de passe.

Comment installer WordPress sur NGINX

Pour installer WordPress sur NGINX, vous avez besoin d’un serveur exécutant l’une des distributions prises en charge par NGINX Unit. vous allez créer une pile LEMU (Linux, NGINX, MySQL et NGINX Unit).

Étape 1 : installez MySQL

Avant de commencer, créez un utilisateur de serveur avec accès sudo.

$ adduser nom d’utilisateur

Vous devrez saisir et confirmer un mot de passe avant de renseigner les détails de l’utilisateur. Ensuite, vous pouvez fournir un accès sudo à cet utilisateur. Cet accès permet à l’utilisateur d’exécuter des commandes normalement exécutées par l’utilisateur root.

Pour ajouter l’utilisateur à un groupe sudo, entrez la commande suivante :

$ usermod -aG sudo nom d’utilisateur

$ sudo apt-get install mysql-server

Saisissez un nouveau mot de passe root. L’outil de configuration MySQL peut alors s’exécuter. Il s’agit d’un assistant de configuration qui vous guide tout au long du processus d’installation.

Étape 2 : créer une base de données MySQL

Une fois que MySQL est prêt, vous pouvez créer une nouvelle base de données. Vous devrez également créer un nouvel utilisateur avec une autorisation de gestion. Pour ce faire,:

$ sudo mysql -u root -p

mysql> CREATE DATABASE wordpress;

mysql> CRÉER UN UTILISATEUR [email protected] IDENTIFIED BY ‘secure_password’;

mysql> ACCORDER TOUS LES PRIVILÈGES SUR wordpress. * À [email protected];

mysql> FLUSH PRIVILEGES;

mysql> Quitter

Au revoir

La commande Flush Privileges s’assure que MySQL reconnaît les modifications que vous avez apportées. Vous devez modifier le nom d’utilisateur et le mot de passe par défaut pour correspondre à vos préférences.

Étape 3 : installez WordPress

Avant d’installer WordPress, vous devez créer un emplacement de fichier temporaire à l’aide de la commande suivante :

$ cd / var / www /

$ sudo wget

$ sudo tar xzvf latest.tar.gz

Cette commande télécharge et décompresse également WordPress.

Étape 4 : configurer WordPress

Ensuite, créez une copie du fichier de configuration WordPress et renommez-le à l’aide des commandes suivantes:

$ cd / var / www / wordpress

$ sudo cp wp-config-sample.php wp-config.php

Vous pouvez mettre à jour les clés SALT dans le fichier pour améliorer la sécurité. L’utilisation de nano ouvre le fichier wp-config.php et vous permet de rechercher les clés SALT :

$ sudo nano wp-config.php

Remplacez les clés par celles nouvellement générées, puis enregistrez et quittez le fichier.

Étape 5 : installez PHP

Bien que vous puissiez utiliser NGINX Unit, vous devez toujours installer PHP. Pour ce faire, vous pouvez utiliser la commande suivante :

$ sudo apt-get install -y php7.0 php7.0-common php7.0-mbstring php7.0-gd php7.0-intl php7.0-xml php7.0-mysql php7.0-mcrypt

Cela est nécessaire car WordPress s’appuie sur plusieurs extensions qui ne sont pas incluses dans NGINX Unit.

Étape 6 : installer l’unité NGINX

Enfin, vous devrez installer l’unité NGINX précompilée pour le système d’exploitation de votre serveur.

$ sudo apt-get install unit-php

Redémarrage de l’unité de service $ sudo

/ usr / share / doc / unit-php / examples / unit.config –unix-socket /run/control.unit.sock // localhost / config

$ curl // localhost: 8300 /

Ces commandes vérifient également que NGINX Unit et PHP fonctionnent correctement.

Ensuite, vous devez installer et configurer NGINX Open Source. Vous pouvez installer un package pré-construit à partir de la branche principale. Il s’agit notamment des dernières fonctionnalités et correctifs. Après cette configuration, WordPress sera prêt à l’emploi.

Continuez à apprendre avec WP Engine

Apache et NGINX sont les options logicielles de serveur Web les plus populaires. Bien qu’ils soient similaires à bien des égards, NGINX offre de meilleures performances pour les sites Web à fort trafic. Cependant, Apache a une communauté plus large avec plus de documentation.

Oh, bien sûr, vous aurez besoin de plusieurs choses pour développer un site Web exceptionnel. Ceux-ci incluent les bons outils, les meilleures ressources et un hébergement Web de premier ordre !

Tags: