7 serveurs Web open source pour les petits et grands sites

Nous avons parcouru un long chemin depuis la sortie du premier serveur Web. Maintenant, il y a tellement d’options plus excitantes.

Différents projets ont des besoins différents, mais le département des serveurs Web open source était plus ou moins un monopole. Pendant longtemps, Apache était la seule option, et la gestion de charges élevées était pénible. Heureusement, les temps ont changé et de nouvelles solutions sont apparues pour des besoins spécialisés.

Jetons donc un coup d’œil à certains des meilleurs et des plus populaires serveurs Web open source disponibles aujourd’hui.

apache

C’est presque synonyme du World Wide Web et alimente toujours la majorité des sites Web dans le monde.

La raison de la domination d’Apache est triple : une licence ouverte, une entrée anticipée (cette chose est sortie en 1995 !) Et un déploiement facile de PHP. Le dernier point a été rendu possible grâce au module mod_php, ce qui signifiait que l’installation d’Apache était tout ce que vous deviez faire pour développer avec PHP.

Voici ce qui fait apache génial:

  • Disponible sur toutes les plateformes – Linux, Windows, MacOS et autres plateformes.
  • C’est le serveur par défaut pour tous les hébergements partagés CPanel, ce qui facilite la configuration et la modification des sites.
  • Des tonnes de fonctionnalités offertes par une large collection de modules. Peu importe à quel point vos besoins sont obscurs, il y a certainement un module existant pour Apache.
  • Configuration par répertoire via des fichiers .htaccess.
  • Prise en charge de HTTP/2, de la compression, des fichiers statiques et de l’équilibrage de charge.
  • Modes MPM et FastCGI pour une simultanéité élevée.
  • Script facile via Lua.

Apache est-il fait pour vous ?

Bref, oui. Il fut un temps où Nginx (que nous considérerons ensuite) a décollé en raison de ses hautes performances, mais Apache a rattrapé son retard après sa version 2.2. Cela dit, comme tous les premiers entrants, Nginx a attiré beaucoup d’attention afin que vous puissiez rencontrer des critiques (invalides) de ses capacités.

Nginx

Si vous aimez boire à la fontaine « kool-aid » (ou pour être politiquement correct, suivez les « derniers développements »), il est probable que vous ayez entendu parler de Nginx (prononcé comme « engine-x », qui était l’idée derrière le nom). Il a été publié en tant que projet en 2002 par un ingénieur russe qui en avait assez de l’incapacité des solutions alors présentes à battre les CK10 problème (essentiellement, la gestion de milliers de connexions simultanées).

Lorsque Nginx est sorti, il a fait tellement de bruit que les gens se sont éloignés d’Apache et n’ont jamais regardé en arrière. Et la tendance se poursuit aujourd’hui. Alors qu’Apache est sans doute au pair aujourd’hui, Nginx a proposé des améliorations étonnantes qui l’ont aidé à gagner.

  • Architecture asynchrone pour la gestion de fortes charges
  • Meilleures capacités de gestion de fichiers statiques, d’équilibrage de charge et de proxy inverse.
  • Mise en cache FastCGI
  • Prise en charge d’uwsgi, SCGI et d’autres protocoles de serveur, avec mise en cache.
  • Gzipping, transformation d’image, plages d’octets, réponses fragmentées, etc., avec le streaming FLV et MKV.
  • WebSockets, connexions keepalive et pipeline
  • Contrôle d’accès, redirection d’erreur, etc.

Dans l’ensemble, Nginx est une centrale électrique avec un tas de fonctionnalités qui lui permettent de garder une longueur d’avance. L’entreprise sous-jacente étant une entreprise durable, une assistance et des conseils rémunérés sont disponibles pour les projets complexes, ce qui peut être utile à certains.

Nginx est-il fait pour vous ?

Si vous aimez concevoir des applications Web à votre goût, Nginx est un gros plus. Vous pouvez concevoir des systèmes complexes et distribués avec une mise en cache, un proxy et un équilibrage de charge puissants, en plus d’utiliser Nginx pour servir directement des fichiers statiques avec plusieurs optimisations.

Et oui, Nginx est prêt pour HTTP/2.

Intéressé par l’apprentissage de Nginx ? Regarde ça cours fondamental.

Caddie

L’un des nouveaux frameworks les plus en vogue qui a récemment fait sensation dans la communauté open source est Caddie.

Considérez Caddy comme un serveur Web de type Nginx (syntaxe similaire et tout), mais tout est simplifié à l’extrême. Par exemple, l’intégration de Let’s Encrypt pour SSL peut se faire en seulement trois lignes de configuration.

Voici pourquoi Caddy attire une tonne d’attention :

  • HTTPS activé par défaut. Oui, vous n’avez rien à faire pour installer ou renouveler les certificats SSL.
  • HTTP/2 obtient le focus principal.
  • Fait pivoter les clés de ticket de session TLS par défaut. Cela permet une gestion de connexion TLS beaucoup plus sécurisée qui n’est pas vulnérable aux goûts de Heartbleed.
  • Aucune dépendance (c’est une base de code binaire compilée par Golang qui ne dépend d’aucune bibliothèque système sous-jacente)
  • Sert les fichiers statiques dans le répertoire courant par défaut !
  • Embeddable – peut être utilisé comme bibliothèque dans d’autres programmes

Caddy est-il fait pour vous ?

Si vous avez soif de simplicité et que vous êtes découragé par les configurations obtuses d’Apache et de Nginx, Caddy se sentira comme une brise d’air frais. Cela dit, cela fonctionne mieux lorsque vous êtes satisfait des valeurs par défaut. Par exemple, si vous souhaitez utiliser votre fournisseur SSL, disposer d’un répertoire séparé pour les fichiers statiques (ce qui est presque toujours le cas), etc., les avantages s’estompent.

Tu peux recevoir Caddy sur Kamatera VM à partir de 4 $ par mois.

Lighthttpd

Le seul domaine où la plupart des serveurs Web modernes échouent est l’utilisation des ressources. Lighthttpd a été conçu pour surmonter ces défis dans les environnements à faible mémoire et à faible processeur.

Lighthttpd est construit sur le modèle de gestion des requêtes asynchrones et reflète donc essentiellement le fonctionnement de Nginx. Mais il y a un hic – Lighthttpd fonctionne dans un seul thread, donc si vous avez une machine plus performante, elle ignorera les autres cœurs de processeur. Il lui manque également les fonctionnalités les plus sophistiquées de Nginx, telles que le proxy SSL, HTTP/2, etc.

Est-ce que Lighthttpd est fait pour vous ?

Lighthttpd est un serveur Web performant à un seul thread qui peut facilement gérer quelques centaines de requêtes par seconde tout en ménageant les ressources système. En dehors de cela, il n’a pas grand-chose à offrir par rapport aux alternatives. Alors peut-être que si vous n’avez pas besoin de toutes les cloches et de tous les sifflets – et que vous transpirez vraiment, vraiment pour les ressources de la machine – Lighthttpd vaut la peine d’être exploré.

MonkeyServer

Malgré son nom étrange, le Singe Le serveur Web est un projet intéressant qui continue d’être activement développé et soutenu.

L’attraction principale du MonkeyServer est le support des plates-formes embarquées. Vous auriez besoin de compiler le serveur vous-même, mais vous pouvez éliminer toutes les fioritures et vous retrouver avec un serveur Web léger et rapide.

  • Cible principalement Linux, mais est également pris en charge sur MacOS
  • Prise en charge complète des processeurs ARM
  • Fonctionne parfaitement sur Android, Raspberry Pi et d’autres plateformes embarquées
  • Durée d’exécution minimale (100 Ko sans plugins)
  • Prend en charge IPv6 et TLS
  • Fonctionne avec CGI et FastCGI
  • Authentification de base, règles de sécurité, etc.

Est-ce que MonkeyServer est fait pour vous ?

Si vous souhaitez cibler des appareils embarqués, MonkeyServer est à peu près ce dont vous avez besoin. Cela dit, il fonctionne aussi bien sur les architectures x86 et x86-64, et peut être utilisé pour exécuter des applications à grande échelle sur des machines puissantes. Il a une communauté beaucoup plus active et dynamique que les autres serveurs Web alternatifs, vous n’êtes donc jamais perdu si vous avez besoin d’aide.

OpenLiteSpeed

OpenLiteSpeed est la version open source du serveur Web d’entreprise proposé par LiteSpeed ​​Technologies.

Il existe de nombreuses raisons d’aimer OpenLiteSpeed :

  • Compatible avec le mod_rewrite d’Apache, ce qui signifie que si vous avez une tonne de fichiers Apache existants, la migration sera un minimum de douleur.
  • Architecture événementielle dans la veine de Nginx, résultant en un débit élevé.
  • Interface d’administration basée sur l’interface graphique, offrant une expérience de configuration agréable.
  • SAPI natif pour PHP, résultant en de meilleures performances.
  • La mise en cache et les optimisations Google PageSpeedInsights sont appliquées par défaut.

Est-ce qu’OpenLiteSpeed ​​est fait pour vous ?

OpenLiteSpeed ​​a beaucoup de sens pour les sites Web axés sur le contenu basés sur WordPress, car les optimisations de page font déjà partie du serveur. Puisqu’il est affiné pour les performances de PHP, les bases de code et les projets basés sur PHP peuvent en bénéficier énormément.

Cherokee

La Cherokee projet était une démangeaison personnelle d’un développeur, qui est devenu une plate-forme de serveur Web décente. Bien qu’il ne dispose pas de fonctionnalités de pointe comme celles de Nginx, il offre une alternative simple, amusante et performante aux serveurs Web traditionnels.

La plus grande victoire pour Cherokee est la simplicité – il n’est pas nécessaire de transpirer avec la ligne de commande pour configurer le serveur. Une interface Web conviviale est fournie et est un plaisir à utiliser pour ceux qui préfèrent la méthode pointer-cliquer pour faire avancer les choses.

Source : Linode

Bien que Cherokee ne soit pas très activement développé, c’est toujours un bon pari pour la plupart des projets quotidiens. Vérifiez-le!

Conclusion

La vie n’aurait aucun sens sans les serveurs Web, et heureusement, nous en avons plusieurs à choisir maintenant. Quel est votre serveur Web open source préféré ? Si vous pensez que j’ai raté une entrée essentielle dans la liste, faites-le moi savoir dans les commentaires et je serai plus qu’heureux de l’ajouter ! 🙂