{"id":18323282,"url":"https://github.com/camara94/metterenplaceapache2","last_synced_at":"2026-04-26T23:31:07.649Z","repository":{"id":100386462,"uuid":"361975669","full_name":"camara94/metterenplaceapache2","owner":"camara94","description":"Dans ce projet, je vais illustrer l'installation d'apache sur notre serveur **VPS**, Apache est un logiciel de serveur web gratuit et open-source qui alimente environ 46% des sites web à travers le monde. Le nom officiel est Serveur Apache HTTP et il est maintenu et développé par Apache Software Foundation","archived":false,"fork":false,"pushed_at":"2021-05-01T20:00:54.000Z","size":1928,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T14:46:15.436Z","etag":null,"topics":["apache2","debian","linux","ubuntu"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/camara94.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-27T04:04:28.000Z","updated_at":"2022-03-01T00:21:25.000Z","dependencies_parsed_at":"2023-05-14T07:30:32.463Z","dependency_job_id":null,"html_url":"https://github.com/camara94/metterenplaceapache2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/camara94/metterenplaceapache2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camara94%2Fmetterenplaceapache2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camara94%2Fmetterenplaceapache2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camara94%2Fmetterenplaceapache2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camara94%2Fmetterenplaceapache2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/camara94","download_url":"https://codeload.github.com/camara94/metterenplaceapache2/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camara94%2Fmetterenplaceapache2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32317162,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"ssl_error","status_checked_at":"2026-04-26T23:26:25.802Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache2","debian","linux","ubuntu"],"created_at":"2024-11-05T18:27:47.958Z","updated_at":"2026-04-26T23:31:07.634Z","avatar_url":"https://github.com/camara94.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mettre en place apache2\nDans ce projet, je vais illustrer l'installation d'apache sur notre serveur **VPS**, \n## INSTALLATION D’APACHE 2\nnous en profitons pour installer aussi le langage PHP et le module Apache associé :\n\u003ccode\u003e\n    \u003cpre\u003e\n        sudo apt-get install apache2\n        sudo apt-get install php\n        sudo apt-get install libapache2-mod-php\n    \u003c/pre\u003e\n\u003c/code\u003e\n\nAprès avoir installé apache2 et PHP, nous allons dans le dossier **var** puis dans le dossier **www** qui va servir de container pour nos site web\n\u003ccode\u003e\n    \u003cpre\u003e\n        cd /var/www\n    \u003c/pre\u003e\n\u003c/code\u003e\nAttribuez à cet utilisateur les droits sur le dossier **/var/www**\u003cbr\u003e\n\u003ccode\u003e\n    \u003cpre\u003e\n    sudo chown -R www-data:www-data /var/www\n    \u003c/pre\u003e\n\u003c/code\u003e\nPour vérifier le statut de notre serveur, lançons la commande suivante :\n\u003ccode\u003e\n    \u003cpre\u003e\n        sudo service apache2 status \n            oubien\n        sudo systemctl status apache2\n    \u003c/pre\u003e\n\u003c/code\u003e\nRésultat:\u003cbr\u003e\n![resultat](images/1.png)\nqui montre que apache2 est installé et est lancé également, après cela nous pouvons vérifier notre **adress ip** dans le navigateur\n\u003ccode\u003e\n    \u003cpre\u003e\n     http://152.228.217.119/\n     \u003c/pre\u003e\n\u003c/code\u003e\nAperçu: \u003cbr\u003e\n![apercu](images/2.png)\nNous voyons ici que notre serveur Apache2 est bien démarré et, par défaut, il se relancera automatiquement à chaque démarrage de notre VPS.\n\nPour avoir la doc, il faut l'installer l'utilitaire:\n\u003ccode\u003e\n    \u003cpre\u003e\n        sudo apt-get install apache2-doc\n    \u003c/pre\u003e\n\u003c/code\u003e\n## Quelques commandes utiles\n* Pour vérifier la version de votre serveur Web, tapez :\u003cbr\u003e\n\u003ccode\u003e\n    \u003cpre\u003e\n       sudo apache2ctl -v\n    \u003c/pre\u003e\n\u003c/code\u003e \n\n![vfdfd](images/3.png)\n\n* Pour obtenir un statut détaillé du serveur  :\u003cbr\u003e\n  \u003ccode\u003e\n    \u003cpre\u003e\n        sudo apachectl status\n    \u003c/pre\u003e\n \u003c/code\u003e\n\n * Pour arrêter, lancer ou relancer votre serveur:\u003cbr\u003e\n    \u003ccode\u003e\n    \u003cpre\u003e\n        sudo service apache2 stop\n        sudo service apache2 start\n        sudo systemctl reload apache2\n    \u003c/pre\u003e\n \u003c/code\u003e\n   \n* Pour vérifier les modules chargés d’Apache2 :\u003cbr\u003e\n \u003ccode\u003e\n    \u003cpre\u003e\n        sudo apache2ctl -M\n    \u003c/pre\u003e\n \u003c/code\u003e\n\n ![ch](images/4.png)\n * Enfin si nous ne souhaitons pas redémarrer Apache2 au démarrage de votre VPS :\u003cbr\u003e\n  \u003ccode\u003e\n    \u003cpre\u003e\n        sudo systemctl disable apache2\n    \u003c/pre\u003e\n \u003c/code\u003e\n * A l’inverse pour réactiver le service :\u003cbr\u003e\n  \u003ccode\u003e\n    \u003cpre\u003e\n        sudo systemctl enable apache2\n    \u003c/pre\u003e\n \u003c/code\u003e\n\n ## LA CONFIGURATION\nLes fichiers de configuration de notre serveur se situent dans le répertoire  **/etc/apache2**:\n\n\u003ccode\u003e\n    \u003cpre\u003e\n        /etc/apache2/\n            |-- mods-enabled\n            |-- conf-enabled\n            |-- sites-enabled\n    \u003c/pre\u003e\n \u003c/code\u003e\n\n* Trois dossiers sont disponibles:\n  1. **mods-enabled** : pour les fichiers de configuration des **modules** d’Apache \n  2. **conf-enabled** : pour fichiers de configuration des **services** disponibles\n  3. **sites-enabled** : pour les fichiers de configuration des **sites** disponibles\n   \n\u003e**Note** : ces répertoires sont en fait des liens symboliques vers -\u003eles répertoires physiques  **mods-available**, **conf-available** \u003eet **sites-available**.\n\nIl y aura au minimum autant de fichiers de configuration dans **sites-enabled** que de sites proposés.\n\n* Au départ il y a un seul site avec les fichiers suivants :\u003cbr\u003e\n\n        \u003ccode\u003e\n            \u003cpre\u003e\n                /etc/apache2/ \n                    |-- sites-enabled\n                        |-- 000-default.conf\n                        |-- default-ssl.conf\n            \u003c/pre\u003e\n        \u003c/code\u003e\n\n  1. **000-default.conf** : configuration utilisée par le mode HTTP (port 80)\n  2. **default-ssl.conf** : configuration utilisée par le mode HTTPS (port 443)\n\n* Le contenu de la configuration HTTP est la suivante :\n\n    \u003ccode\u003e\n    \u003cpre\u003e\n        \u0026lt;VirtualHost *:80\u0026gt;\n                ServerAdmin webmaster@localhost\n                DocumentRoot /var/www/html\n                ErrorLog ${APACHE_LOG_DIR}/error.log\n                CustomLog ${APACHE_LOG_DIR}/access.log combined\n        \u0026lt;/VirtualHost\u0026gt;\n    \u003c/pre\u003e\n    \u003c/code\u003e\n\n    1. La balise \u003ccode\u003eVirtualHost\u003c/code\u003e permet de définir un hôte virtuel qui écoutera sur le port **80 (HTTP)**.\n\n    2. \u003ccode\u003eDocumentRoot\u003c/code\u003e indique le chemin des pages web qui seront accessibles sur le serveur : **/var/www/html**\n\n* Apache recommande de créer un fichier de configuration pour chaque hôte virtuel ou application web dans le répertoire **/etc/apache2/sites-available/** \n* correspondant à **«000-default.conf»** via les commandes, nous pouvons l'activer et le desactiver **a2ensite (enable site)** et **a2dissite (disable site)**:\u003cbr\u003e\n        \u003ccode\u003e\n            \u003cpre\u003e\n                sudo a2ensite 000-default\n                sudo a2dissite 000-default\n            \u003c/pre\u003e\n        \u003c/code\u003e\n * De même nous pouvons **activer / désactiver** la configuration correspondant par exemple à  **charset.conf** en tapant :\u003cbr\u003e\n        \u003ccode\u003e\n            \u003cpre\u003e\n                sudo a2enconf charset\n                sudo a2disconf charset\n            \u003c/pre\u003e\n        \u003c/code\u003e\n\n * Et enfin, nous pouvons **activer / désactiver** le module correspondant par exemple à  **alias.load**\n        \u003ccode\u003e\n            \u003cpre\u003e\n                sudo a2enmod alias\n                sudo a2dismod alias\n            \u003c/pre\u003e\n        \u003c/code\u003e\n\n * Chaque modification nécessitera une prise en compte des changements via la commande suivante :\u003cbr\u003e\n        \u003ccode\u003e\n            \u003cpre\u003e\n                sudo systemctl reload apache2\n            \u003c/pre\u003e\n        \u003c/code\u003e\nNotons enfin les deux fichiers de configuration ci-dessous :\u003cbr\u003e\n        \u003ccode\u003e\n            \u003cpre\u003e\n                /etc/apache2/ \n                    |-- apache2.conf\n                    |-- ports.conf\n            \u003c/pre\u003e\n        \u003c/code\u003e\n   1. **apache2.conf** : configuration générale du serveur (timeout du serveur, utilisateur www-data, niveau de log, …)\n   2. **ports.conf** : configuration de la liste des ports en écoute (80 et 443 par défaut)\n   \n## MODULE PHP\nPar défaut ubuntu 18.04 TLS propose PHP 7.2.24 qui est une version assez ancienne. Voici comment faire pour avoir une version récente (la 7.4).\n* Pour vérifier la version \n    \u003ccode\u003e\n           php -v\n    \u003c/code\u003e\n\n![php v](images/5.png)\n\n* Enfin installons les modules pour **Apache / MariaDB :**\n   \u003ccode\u003e\n    \u003cpre\u003e\n            sudo apt install -y apache2 libapache2-mod-php\n            sudo apt install -y php7.4-mysql    \n    \u003c/pre\u003e\n    \u003c/code\u003e\n* Vérifions que le module PHP est bien activé :\n  \u003ccode\u003e\n    \u003cpre\u003e\n           sudo apache2ctl -M | grep php \n    \u003c/pre\u003e\n    \u003c/code\u003e\n* Relançons notre serveur Apache pour prendre en compte ces modifications\n  \u003ccode\u003e\n    \u003cpre\u003e\n          sudo systemctl restart apache2\n    \u003c/pre\u003e\n    \u003c/code\u003e\n* Nous pouvons vérifier par une simple page PHP, les informations relatives à votre serveur.\n\n    Editez la page PHP suivante :\n    \u003ccode\u003e\n    \u003cpre\u003e\n          cd /var/www/html/\n          sudo vi getinfo.php\n    \u003c/pre\u003e\n    \u003c/code\u003e\n\n  * Et indiquez la commande :\n  \u003ccode\u003e\n    \u003cpre\u003e\n        \u0026lt;?php phpinfo(); ?\u0026gt;\n    \u003c/pre\u003e\n    \u003c/code\u003e\n * Vérifier avec http://152.228.217.119/getinfo.php\n\n![imag php](images/6.png)\n\n## Configuration de nom de domaine\nJe vais d'abord dans notre serveur **OVH** dans la section **Zone DNS**\n![ds](images/7.png)\n\npuis je clique sur le bouton **Ajouter une entrée**, je choisie champs de pointage \u003ccode\u003e**A**\u003c/code\u003e pour pouvoir ajouter l'adresse **IP4** de notre **VPS** dans sous-domaine je sais **www**\n![confirm](images/9.png)\n\nEt en je confirme \n![confirm ](images/11.png) \naprès cette étape, nous pouvons voir que notre site **stardevcgroup.com** pointe maintenant vers **152.228.217.119** pour vérifier il nous sufit de tester ces deux urls suivante\n* http://152.228.217.119\n* http://stardevcgroup.com\u003cbr\u003e\nnous constatons directement que ces deux urls affiche le même résultat au navigateur\n\n## Création d'un hôte virtuel\nPour cela nous allons maintenant acceder à notre **VPS** en **SSH**\ndans cet article j'ai choisir l'outil **MobaXterm** qui a une version gratuite qui fait notre affaire mais on pouvait choisir **Putty** qui est aussi intéressant.\n![mobaxterm](images/12.png)\n\nPour ajouter session il suffit de cliquer sur **session** il nous sera demandé votre nom **d'hôte** et **username** puis lorsque nous cliquons sur **OK** il nous demande votre **mot de passe** enfin et lors de prochaine connexion nous n'aurons plus besoin de les retaper.\n![ll](images/13.png)\nAperçu de **MobaXterm** une fois logged dans notre **VPS**\n![aper](images/14.png)\nAprès quelques manup j'obtiens ça qui n'est pas si mal\n\n![cxc](images/15.png)\n\n* On créer le dossier **stardevcgroup.com** qui va héberger les fichier de notre site\n  \u003ccode\u003e\n  \u003cpre\u003e\n        cd /var/ww\n        mkdir stardevcgroup.com\n        cd stardevcgroup.com\n        touch index.html\n        nano index.html\n  \u003c/pre\u003e\n  \u003c/code\u003e\n\n  et puis je vais ajouter **Bienvenue sur Star Dev Cloud Group**\n\n  ![dd](images/16.png)\n\n  Pour activer notre site vers ce dossier, nous allons dans **/etc/apache2/sites-enabled** et l'interieur de ce dossier on créer un fichier **startdevcgroup.com.conf**\n  \u003ccode\u003e\n  \u003cpre\u003e\n        cd /etc/apache2/sites-enable\n        nano stardevcgroup.com\n  \u003c/pre\u003e\n  \u003c/code\u003e\n\n  ![star](images/17.png)\n  Dans ce fichier les deux qui sont essentielles sont:\n  * \u003ccode\u003e**ServerName**\u003c/code\u003e qui indique l'URL du site ou le nom de domaine\n  * \u003ccode\u003e**DocumentRoot**\u003c/code\u003e indique le dossier qui héberge notre site ou tout simplement la racine de notre site\u003cbr\u003e\n  si vous voulez en savoir plus [Cliquez ici](https://github.com/camara94/AdministrationdunserveurLAMP#pour-la-cr%C3%A9ation-dun-h%C3%B4te-virtuel)\n\n  * Pour activer cette configuration \u003ccode\u003eap","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamara94%2Fmetterenplaceapache2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcamara94%2Fmetterenplaceapache2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamara94%2Fmetterenplaceapache2/lists"}