-
Notifications
You must be signed in to change notification settings - Fork 0
Analyse service WEB
Traduction du CdC en besoins techniques.
Le client a besoin de 2 sites webs publics qui seront tous 2 hébergés en virtual hosting sur le même serveur web:
- Un site de vitrine statique (HTML et CSS)
- Un site b2b dynamique de vente en ligne lié à une base de données (PHP et MYSQL)
Le code source des 2 sites étant déjà préexistant, le client nous demande de concevoir le prototype avec des sites webs simples. Pour le site dynamique, le client aura besoin d'une base de données qui ne pourra être accessible que depuis l'intérieur de l'entreprise.
- Apache : Apache est un logiciel open source disponible depuis 1995. Il est l'un des serveurs webs le plus utilisé et peut prendre en charge de nombreux modules, ce qui permet d'y ajouter des fonctionnalités supplémentaires.
- Nginx : Nginx est un logiciel libre de serveur web et peut être utilisé comme proxy inversé. Nginx a été développé en 2002 par un société Russe et est actuellement le 2eme serveur web le plus utilisé dans le monde
- Node.js : Node.js est un serveur web libre utilisant javascript qui a été créé en 2009. Il est utilisé par de nombreuses sociétés telles que Netflix ou bien encore PayPal
- Lighttpd : Lighttpd est un serveur web sécurisé, rapide et flexible écrit en C. Il est plus rapide que la majorité des serveurs webs grâce a son utilisation intelligente du CPU ainsi que sa faible utilisation de mémoire. Selon Netcraft, il a dépassé Nginx et est devenu le 4eme serveur web utilisé dans le monde en 2008.
| Solution | Gratuit | HTTPS | Hébergement virtuel | IPV6 | FastCGI | full stack intégrant MYSQL et PHP | Reverse Proxy Intégré |
|---|---|---|---|---|---|---|---|
| Apache | Oui | Oui | Oui | Oui | Oui | Oui | Non |
| Nginx | Oui | Oui | Oui | Oui | Oui | Oui | Oui |
| Node.js | Oui | Oui | Oui | Oui | Oui | Non | Non |
| Lighttpd | Oui | Oui | Oui | Oui | Oui | Oui | Non |
Sources utilisées : Wikipédia
Ces 4 solutions sont parmi les solutions les plus utilisées dans le monde pour faire un serveur web, mais NodeJs n'est pas intégré dans une solution Full Stack comprenant PHP et MYSQL, bien qu'il soit possible de l'utiliser pour héberger des sites en PHP. Les trois autres solutions nous permettant une configuration plus simple avec PHP et MYSQL, nous avons donc dans un premier temps décidé d'éliminer Nodes.JS de notre choix de serveur web.
Ensuite, concernant Lighttpd, la configuration de PHP est plus complexe car lighttpd ne possède pas de module prévu à cet effet(1). De plus il est moins stable que Apache et Nginx et comporte plus de bugs(2). Nous avons donc décidé de ne pas utiliser Lighttpd.
Enfin, ayant déjà travaillé avec Apache dans le passé, nous avons décidé de choisir cette solution afin de nous faciliter la configuration du server web.
Apache est puissant et très polyvalent dans sa configuration et la documentation le concernant est très facilement trouvable sur internet car il possède une grande communauté, ce qui nous facilitera la tâche(3). De plus, les configurations d'apache n'ayant pas changé depuis longtemps, nous pouvons utiliser des documentations datant de plus de 10 ans sans qu'elles ne soient obsolètes.(4)
Cependant, Nginx offre de nombreux avantages comme par exemple sa rapidité, ou bien le nombre élevé de connexions qu'il permet. De plus, Nginx peut s'ajouter à une configuration d'Apache ( l'inverse n'est pas réalisable ) pour avoir les avantages des 2 logiciels. Nous comptons donc, si nous en avons le temps, intégrer Nginx à notre serveur Apache pour fournir au client une solution optimale.
Pour installer la solution, voici les étapes qu'il faudra suivre :
- Créer la DB
- Créer le code source des 2 sites
- Configurer le serveur Apache et l'hébergement virtuel
- Assurer la visibilité des 2 sites sur le web
- Assurer la connectivité entre le site B2B et la DB
- Assurer les interactions avec le contenu de la DB depuis le site B2B
- https://www.tecmint.com/best-open-source-web-servers/ écrit par James Kiarie, mis à jours le 29 juillet 2020, consulté le 3 mai 2022
- https://www.atlantic.net/vps-hosting/lamp-vs-lemp-choosing-apache-or-nginx-web-server/ écrit le 13 octobre 2015 par l'équipe éditoriale de Atlantic.net, consulté le 4 mai 2022
- https://www.tophebergeur.com/blog/comparatif-apache-vs-nginx/#:~:text=La%20principale%20diff%C3%A9rence%20entre%20Apache,requ%C3%AAtes%20pour%20un%20seul%20thread. écrit par Jacques Tremblay, mis à jour le 5 mai 2022, consulté le 7 mai 2022
- https://www.digitalocean.com/community/tutorials/comment-installer-la-pile-linux-apache-mysql-php-lamp-sur-un-serveur-ubuntu-18-04-fr écrit le 15 mars 2019 par Erika Heidi et Marck Drake, consulté le 7 mai 2022
- https://www.linuxtricks.fr/wiki/apache-les-virtual-hosts rédigé par Adrien D, mis à jour le 14 décembre 2020 ,consulté le 7 mai 2022
- https://blog.krybot.com/a?ID=00200-acb4db0e-3092-4607-818b-62ae278653e9 retranscription en Anglais d'un article rédigé en Chinois par Canye le 21 mei 2012 (Article originel), consulté le 16 mai 2022
- https://www.difference.wiki/apache-vs-lighttpd/ rédigé par Harlon Moss, mis à jour le 29 avril 2022, consulté le 16 mai 2022
- https://w3techs.com/technologies/comparison/ws-apache,ws-nginx,ws-nodejs auteur inconnu, mis à jour le 16 mai 2022, consulté le 16 mai 2022
- Analyse service DNS
- Etat des configurations du service DNS
- Documentation du service DNS
- Sécurisation du service DNS
- Analyse service WEB
- Etat des configurations du service WEB
- Documentation du service WEB
- Sécurisation du service WEB
- Analyse service MAIL
- Etat des configurations du service MAIL
- Documentation du service MAIL
- Sécurisation du service MAIL
- Analyse service Interne
- Etat des configurations du service Interne
- Documentation du service Interne
- Sécurisation du service Interne