{"id":234,"date":"2023-04-06T13:06:02","date_gmt":"2023-04-06T11:06:02","guid":{"rendered":"https:\/\/baltazorius.fr\/?p=234"},"modified":"2023-05-18T06:48:08","modified_gmt":"2023-05-18T04:48:08","slug":"configurer-les-virtualhost-dapache2","status":"publish","type":"post","link":"https:\/\/baltazorius.fr\/index.php\/2023\/04\/06\/configurer-les-virtualhost-dapache2\/","title":{"rendered":"Configurer les VirtualHost d&rsquo;apache2"},"content":{"rendered":"\n<p>Un <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Serveur_HTTP\" target=\"_blank\" rel=\"noreferrer noopener\">serveur HTTP<\/a> permet \u00e0 un site web de communiquer avec un navigateur en utilisant le protocole <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Hypertext_Transfer_Protocol\" target=\"_blank\" rel=\"noreferrer noopener\">HTTP(S)<\/a> et ses extensions (<a href=\"https:\/\/fr.wikipedia.org\/wiki\/WebDAV\" target=\"_blank\" rel=\"noreferrer noopener\">WebDAV<\/a>, etc.). <strong>Apache<\/strong> est probablement le serveur HTTP le plus populaire. C&rsquo;est donc lui qui met \u00e0 disposition la plupart des sites Web du <a href=\"https:\/\/fr.wikipedia.org\/wiki\/World_Wide_Web\" target=\"_blank\" rel=\"noreferrer noopener\">WWW<\/a>.<br>Il est produit par la <em>Apache Software Foundation<\/em>. C&rsquo;est un logiciel libre fourni sous la <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Licence_Apache\" target=\"_blank\" rel=\"noreferrer noopener\">licence sp\u00e9cifique Apache<\/a>.<\/p>\n\n\n\n<p>On utilise g\u00e9n\u00e9ralement Apache en conjonction avec d&rsquo;autres logiciels, permettant d&rsquo;interpr\u00e9ter du code et d&rsquo;acc\u00e9der \u00e0 des bases de donn\u00e9es. Le cas le plus courant est celui d&rsquo;un serveur <a href=\"https:\/\/doc.ubuntu-fr.org\/lamp\" target=\"_blank\" rel=\"noreferrer noopener\">LAMP<\/a> (Linux Apache MySQL PHP).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Configurer une ip fixe et ouvrir les ports de routeur<\/h2>\n\n\n\n<p><strong>configurer une adresse IP fixe :<\/strong> <a href=\"https:\/\/baltazorius.fr\/index.php\/2023\/04\/06\/comment-configurer-une-adresse-ip-sur-ubuntu\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/baltazorius.fr\/index.php\/2023\/04\/06\/comment-configurer-une-adresse-ip-sur-ubuntu\/<\/a><\/p>\n\n\n\n<p><strong>Ouvrir les ports de routeur :<\/strong> voir sur internet ou votre fournisseur d\u2019acc\u00e8s, sa d\u00e9pend de votre box et ouvrir les ports 80, 443, 22<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cr\u00e9ation d&rsquo;h\u00f4tes virtuels<\/h2>\n\n\n\n<p>Nous allons cr\u00e9er un fichier <strong>example.com.conf<\/strong> et mettre toutes les informations, pour que votre nom de nom de domaine soit pris en charge sur le port 80  :<\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">sudo nano \/etc\/apache2\/sites-available\/example.com.conf<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n\n\n\n<p>Copier et coller le VirtualHost si dessous et modifier ( <strong>www.example.com<\/strong> et \/var\/www\/<strong>example<\/strong> ) comme il le faut suivant votre nom de domaine et le chemin de votre dossier<\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">&lt;VirtualHost *:80&gt;<br\/>\tServerName example.com<br\/>\tServerAlias www.example.com<br\/>\tDocumentRoot &quot;\/var\/www\/example&quot;<br\/>\t&lt;Directory &quot;\/var\/www\/example&quot;&gt;<br\/>\t\tOptions  FollowSymLinks<br\/>\t\tAllowOverride all<br\/>\t\tRequire all granted<br\/>\t&lt;\/Directory&gt;<br\/>\tErrorLog \/var\/log\/apache2\/error.example.com.log<br\/>\tCustomLog \/var\/log\/apache2\/access.example.com.log combined<br\/>&lt;\/VirtualHost&gt;<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n\n\n\n<p class=\"has-medium-font-size\">Fermer et sauvegarder : <strong>ctrl+x<\/strong> mettre ensuite <strong>o<\/strong> pour dire oui et <strong>enter<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Explication :<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-background\" style=\"background-color:#abb7c24f\"><tbody><tr><td><strong>&lt;VirtualHost *:80&gt;<\/strong><\/td><td>On accepte les connexions sur n&rsquo;importe quelle IP du serveur (<code>*<\/code>) sur le port 80.<\/td><\/tr><tr><td><strong>ServerName example.com<\/strong><\/td><td>Cet h\u00f4te virtuel sera seulement appel\u00e9 pour le nom de domaine <em>example.com<\/em>\u2026<\/td><\/tr><tr><td><strong>ServerAlias www.example.com<\/strong><\/td><td>ainsi que pour le sous-domaine <em>www.example.com<\/em>. On peut sp\u00e9cifier ici d&rsquo;autres noms de domaine en les s\u00e9parant par un espace. On peut aussi utiliser <em>*.example.com<\/em> pour inclure tous les sous-domaines.<\/td><\/tr><tr><td><strong>DocumentRoot \u00ab\u00a0\/var\/www\/example\u00a0\u00bb<\/strong><\/td><td>On placera les fichiers du site dans le r\u00e9pertoire <code>\/var\/www\/example<\/code>.<\/td><\/tr><tr><td><strong>&lt;Directory \u00ab\u00a0\/var\/www\/example\u00a0\u00bb&gt;<\/strong><\/td><td>On sp\u00e9cifie dans cette section des r\u00e8gles pour le r\u00e9pertoire <code>\/var\/www\/example<\/code> sous cet h\u00f4te virtuel.<\/td><\/tr><tr><td><strong>Options +FollowSymLinks<\/strong><\/td><td>Apache suivra les <a href=\"https:\/\/doc.ubuntu-fr.org\/lien_physique_et_symbolique\" target=\"_blank\" rel=\"noreferrer noopener\">liens symboliques<\/a> qu&rsquo;il trouvera dans ce r\u00e9pertoire (et ses descendants).<\/td><\/tr><tr><td><strong>AllowOverride all<\/strong><\/td><td>On pourra inclure une configuration personnalis\u00e9e via un fichier <a href=\"https:\/\/doc.ubuntu-fr.org\/apache2#htaccess\" target=\"_blank\" rel=\"noreferrer noopener\">.htaccess<\/a>.<\/td><\/tr><tr><td><strong>Require all granted<\/strong><\/td><td>Tous les visiteurs pourront acc\u00e9der au contenu de ce r\u00e9pertoire. Voir la <a href=\"https:\/\/httpd.apache.org\/docs\/current\/fr\/mod\/mod_authz_core.html#require\" target=\"_blank\" rel=\"noreferrer noopener\">documentation officielle<\/a> pour modifier ce comportement. Pour des raisons de s\u00e9curit\u00e9 ou de privacit\u00e9 on peut par exemple limiter l&rsquo;acc\u00e8s au serveur \u00e0 seulement une ou certaines adresses IP avec une directive du type <code>Require ip 192.168.1.10<\/code>.<\/td><\/tr><tr><td><strong>ErrorLog \/var\/log\/apache2\/error.example.com.log CustomLog \/var\/log\/apache2\/access.example.com.log combined<\/strong><\/td><td>Il est pratique d&rsquo;avoir des logs s\u00e9par\u00e9s pour chaque h\u00f4te virtuel, afin de ne pas m\u00e9langer toutes les informations.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Apr\u00e8s l&rsquo;avoir cr\u00e9\u00e9e, il faut activer cette configuration avec la commande <code><strong>sudo a2ensite [nom du fichier sans son extension]<\/strong><\/code>. Par exemple : <\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">sudo a2ensite example.com<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n\n\n\n<p>Vous souhaiterez peut-\u00eatre d\u00e9sactiver le site Web par d\u00e9faut install\u00e9 avec Apache. Ceci est n\u00e9cessaire si vous n&rsquo;utilisez pas de nom de domaine personnalis\u00e9, car dans ce cas, la configuration par d\u00e9faut d&rsquo;Apache remplacerait votre h\u00f4te virtuel. Pour d\u00e9sactiver le site Web par d\u00e9faut d&rsquo;Apache, tapez&nbsp;:<\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">sudo a2dissite 000-default<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n\n\n\n<p>Pour vous assurer que votre fichier de configuration ne contient pas d&rsquo;erreurs de syntaxe, ex\u00e9cutez la commande suivante&nbsp;:<\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">sudo apache2ctl configtest<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n\n\n\n<p>On recharge ensuite la configuration d&rsquo;Apache :<\/p>\n\n\n<div class=\"wp-block-wab-pastacode\">\n\t<div class=\"code-embed-wrapper\"> <pre class=\"language-bash code-embed-pre\"  data-start=\"1\" data-line-offset=\"0\"><code class=\"language-bash code-embed-code\">sudo systemctl reload apache2<\/code><\/pre> <div class=\"code-embed-infos\"> <\/div> <\/div><\/div>\n<p>Views: 1431<\/p>","protected":false},"excerpt":{"rendered":"<p>Un serveur HTTP permet \u00e0 un site web de communiquer avec un navigateur en utilisant le protocole HTTP(S) et ses extensions (WebDAV, etc.). Apache est probablement le serveur HTTP le plus populaire. C&rsquo;est donc lui qui met \u00e0 disposition la plupart des sites Web du WWW.Il est produit par la Apache Software Foundation. C&rsquo;est un &#8230; <a href=\"https:\/\/baltazorius.fr\/index.php\/2023\/04\/06\/configurer-les-virtualhost-dapache2\/\" class=\"more-link\">En savoir plus<span class=\"screen-reader-text\"> \u00ab\u00a0Configurer les VirtualHost d&rsquo;apache2\u00a0\u00bb<\/span> &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-234","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/posts\/234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/comments?post=234"}],"version-history":[{"count":8,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/posts\/234\/revisions"}],"predecessor-version":[{"id":548,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/posts\/234\/revisions\/548"}],"wp:attachment":[{"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/media?parent=234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/categories?post=234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/baltazorius.fr\/index.php\/wp-json\/wp\/v2\/tags?post=234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}