<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://mediawiki.ajlsm.com/index.php?action=history&amp;feed=atom&amp;title=Matomo%2FHAProxy</id>
	<title>Matomo/HAProxy - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.ajlsm.com/index.php?action=history&amp;feed=atom&amp;title=Matomo%2FHAProxy"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;action=history"/>
	<updated>2026-11-06T19:10:30Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6515&amp;oldid=prev</id>
		<title>Jlarvers : /* Exemple générique */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6515&amp;oldid=prev"/>
		<updated>2026-10-20T10:51:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Exemple générique&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:51&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l106&quot;&gt;Ligne 106 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 106 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ajouter les règles suivantes dans le frontend HAProxy approprié :&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ajouter les règles suivantes dans le frontend HAProxy approprié :&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;haproxy&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;yaml&lt;/ins&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# MATOMO - PROJET&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# MATOMO - PROJET&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;acl host_projet_matomo hdr(host),host_only -i matomo.exemple.fr&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;acl host_projet_matomo hdr(host),host_only -i matomo.exemple.fr&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6514&amp;oldid=prev</id>
		<title>Jlarvers : /* 7. Déploiement avec Ansible */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6514&amp;oldid=prev"/>
		<updated>2026-10-20T10:45:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;7. Déploiement avec Ansible&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:45&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l178&quot;&gt;Ligne 178 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 178 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi : [[WAF_2026#Ansible|WAF 2026]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;la configuration du WAF avec ansible &lt;/ins&gt;: [[WAF_2026#Ansible|WAF 2026]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6513&amp;oldid=prev</id>
		<title>Jlarvers : /* 7. Déploiement avec Ansible */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6513&amp;oldid=prev"/>
		<updated>2026-10-20T10:44:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;7. Déploiement avec Ansible&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:44&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l178&quot;&gt;Ligne 178 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 178 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi : [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;WAF 2026|&lt;/del&gt;WAF_2026#Ansible]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi : [[WAF_2026#Ansible&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|WAF 2026&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6512&amp;oldid=prev</id>
		<title>Jlarvers : /* 7. Déploiement avec Ansible */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6512&amp;oldid=prev"/>
		<updated>2026-10-20T10:43:40Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;7. Déploiement avec Ansible&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:43&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l178&quot;&gt;Ligne 178 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 178 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi :[[WAF_2026#Ansible]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Voir aussi : [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;WAF 2026|&lt;/ins&gt;WAF_2026#Ansible]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6511&amp;oldid=prev</id>
		<title>Jlarvers : /* 7. Déploiement avec Ansible */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6511&amp;oldid=prev"/>
		<updated>2026-10-20T10:43:11Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;7. Déploiement avec Ansible&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:43&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l178&quot;&gt;Ligne 178 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 178 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 7. Déploiement avec Ansible ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Voir aussi :[[WAF_2026#Ansible]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Modification ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6510&amp;oldid=prev</id>
		<title>Jlarvers : /* Configuration HAProxy */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6510&amp;oldid=prev"/>
		<updated>2026-10-20T10:41:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Configuration HAProxy&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l327&quot;&gt;Ligne 327 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 327 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Configuration HAProxy ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Configuration HAProxy ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;haproxy&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;yaml&lt;/ins&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# AD64 MATOMO&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# AD64 MATOMO&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;acl host_ad64_matomo hdr(host),host_only -i ad64-matomo.pleade.com&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;acl host_ad64_matomo hdr(host),host_only -i ad64-matomo.pleade.com&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l344&quot;&gt;Ligne 344 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 344 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Backend HTTPS existant :&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Backend HTTPS existant :&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;haproxy&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;yaml&lt;/ins&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_ssl_ad64_matomo&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_ssl_ad64_matomo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server SSLAD64MATOMO 10.0.0.41:443 check ssl verify none sni str(ad64-matomo.pleade.com)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server SSLAD64MATOMO 10.0.0.41:443 check ssl verify none sni str(ad64-matomo.pleade.com)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6509&amp;oldid=prev</id>
		<title>Jlarvers : /* Backend HTTP */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6509&amp;oldid=prev"/>
		<updated>2026-10-20T10:41:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Backend HTTP&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l148&quot;&gt;Ligne 148 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 148 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Un backend HTTP peut également être utilisé sur un réseau interne maîtrisé :&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Un backend HTTP peut également être utilisé sur un réseau interne maîtrisé :&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;haproxy&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;yaml&lt;/ins&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_projet_matomo&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_projet_matomo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server PROJETMATOMO 10.0.0.X:80 check&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server PROJETMATOMO 10.0.0.X:80 check&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6508&amp;oldid=prev</id>
		<title>Jlarvers : /* 5. Configuration du backend */</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6508&amp;oldid=prev"/>
		<updated>2026-10-20T10:41:17Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;5. Configuration du backend&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 20 octobre 2026 à 10:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l133&quot;&gt;Ligne 133 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 133 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Exemple HTTPS ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Exemple HTTPS ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;haproxy&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;yaml&lt;/ins&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_ssl_projet_matomo&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;backend back_ssl_projet_matomo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server SSLPROJETMATOMO 10.0.0.X:443 check ssl verify none sni str(matomo.exemple.fr)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     server SSLPROJETMATOMO 10.0.0.X:443 check ssl verify none sni str(matomo.exemple.fr)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6507&amp;oldid=prev</id>
		<title>Jlarvers : Page créée avec « = Publication et sécurisation de Matomo avec HAProxy =  == Objectif ==  Cette procédure décrit la publication d&#039;une instance Matomo derrière les répartiteurs HAProxy ... »</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.ajlsm.com/index.php?title=Matomo/HAProxy&amp;diff=6507&amp;oldid=prev"/>
		<updated>2026-10-20T10:40:43Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « = Publication et sécurisation de Matomo avec HAProxy =  == Objectif ==  Cette procédure décrit la publication d&amp;#039;une instance Matomo derrière les répartiteurs HAProxy ... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Publication et sécurisation de Matomo avec HAProxy =&lt;br /&gt;
&lt;br /&gt;
== Objectif ==&lt;br /&gt;
&lt;br /&gt;
Cette procédure décrit la publication d&amp;#039;une instance Matomo derrière les répartiteurs HAProxy d&amp;#039;AJLSM.&lt;br /&gt;
&lt;br /&gt;
Elle permet de :&lt;br /&gt;
&lt;br /&gt;
* Publier Matomo en HTTPS.&lt;br /&gt;
* Autoriser les requêtes de collecte des statistiques provenant des visiteurs.&lt;br /&gt;
* Réserver l&amp;#039;interface d&amp;#039;administration aux adresses IP autorisées.&lt;br /&gt;
* Déployer une configuration identique sur les deux HAProxy à l&amp;#039;aide d&amp;#039;Ansible.&lt;br /&gt;
* Vérifier le fonctionnement depuis une connexion extérieure.&lt;br /&gt;
&lt;br /&gt;
Cette procédure complète :&lt;br /&gt;
&lt;br /&gt;
* [[Matomo/Installation]]&lt;br /&gt;
* [[Matomo/Apache]]&lt;br /&gt;
* [[Matomo/Drupal]]&lt;br /&gt;
* [[Matomo/Debug]]&lt;br /&gt;
&lt;br /&gt;
== 1. Architecture ==&lt;br /&gt;
&lt;br /&gt;
Dans l&amp;#039;infrastructure AJLSM, le trafic suit généralement le chemin suivant :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Navigateur du visiteur&lt;br /&gt;
        |&lt;br /&gt;
        | HTTPS&lt;br /&gt;
        v&lt;br /&gt;
HAProxy (haproxy-01 / haproxy-02)&lt;br /&gt;
        |&lt;br /&gt;
        | HTTPS ou HTTP interne&lt;br /&gt;
        v&lt;br /&gt;
VM applicative&lt;br /&gt;
        |&lt;br /&gt;
        v&lt;br /&gt;
Apache + PHP-FPM + Matomo&lt;br /&gt;
        |&lt;br /&gt;
        v&lt;br /&gt;
MariaDB&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le navigateur charge le JavaScript Matomo et transmet les données de fréquentation au serveur Matomo.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Important :&amp;#039;&amp;#039;&amp;#039; la collecte des statistiques doit fonctionner pour les visiteurs extérieurs, même lorsque l&amp;#039;interface d&amp;#039;administration Matomo est réservée à AJLSM.&lt;br /&gt;
&lt;br /&gt;
== 2. Prérequis ==&lt;br /&gt;
&lt;br /&gt;
Avant de modifier HAProxy, vérifier :&lt;br /&gt;
&lt;br /&gt;
* Que Matomo fonctionne sur la VM applicative.&lt;br /&gt;
* Que le VirtualHost Apache est configuré.&lt;br /&gt;
* Que le nom DNS public de Matomo est défini.&lt;br /&gt;
* Que le certificat HTTPS public est disponible sur HAProxy.&lt;br /&gt;
* Que le backend Matomo est joignable depuis les répartiteurs.&lt;br /&gt;
* Que l&amp;#039;adresse IP ou le réseau autorisé pour l&amp;#039;administration est connu.&lt;br /&gt;
&lt;br /&gt;
La configuration HAProxy est gérée par Ansible. Les modifications doivent être réalisées dans les fichiers sources du dépôt `ansible-ajlsm`, et non directement dans `/etc/haproxy/haproxy.cfg` sur les serveurs.&lt;br /&gt;
&lt;br /&gt;
== 3. Paramètres à personnaliser ==&lt;br /&gt;
&lt;br /&gt;
Pour chaque nouvelle installation, identifier les paramètres suivants :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Paramètre&lt;br /&gt;
! Exemple&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Domaine Matomo&lt;br /&gt;
| matomo.exemple.fr&lt;br /&gt;
| Nom DNS public de Matomo&lt;br /&gt;
|-&lt;br /&gt;
| Backend&lt;br /&gt;
| back_ssl_projet_matomo&lt;br /&gt;
| Nom du backend HAProxy&lt;br /&gt;
|-&lt;br /&gt;
| Adresse de la VM&lt;br /&gt;
| 10.0.0.X&lt;br /&gt;
| Adresse privée de la VM hébergeant Matomo&lt;br /&gt;
|-&lt;br /&gt;
| Port backend&lt;br /&gt;
| 443&lt;br /&gt;
| Port HTTPS interne, si utilisé&lt;br /&gt;
|-&lt;br /&gt;
| ACL des administrateurs&lt;br /&gt;
| allowed_ajlsm&lt;br /&gt;
| Adresses IP autorisées à accéder à l&amp;#039;interface&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 4. Configuration des ACL ==&lt;br /&gt;
&lt;br /&gt;
=== Principe ===&lt;br /&gt;
&lt;br /&gt;
Deux chemins sont nécessaires au suivi Matomo standard :&lt;br /&gt;
&lt;br /&gt;
* `/matomo.js` : chargement du JavaScript de suivi.&lt;br /&gt;
* `/matomo.php` : réception des données de fréquentation.&lt;br /&gt;
&lt;br /&gt;
Ces deux chemins doivent rester accessibles publiquement.&lt;br /&gt;
&lt;br /&gt;
Les autres chemins de l&amp;#039;interface Matomo sont réservés aux adresses IP autorisées.&lt;br /&gt;
&lt;br /&gt;
=== Exemple générique ===&lt;br /&gt;
&lt;br /&gt;
Ajouter les règles suivantes dans le frontend HAProxy approprié :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;haproxy&amp;quot;&amp;gt;&lt;br /&gt;
# MATOMO - PROJET&lt;br /&gt;
acl host_projet_matomo hdr(host),host_only -i matomo.exemple.fr&lt;br /&gt;
&lt;br /&gt;
# Ressources de collecte accessibles publiquement&lt;br /&gt;
acl projet_matomo_tracking path -i /matomo.js /matomo.php&lt;br /&gt;
&lt;br /&gt;
# Interface Matomo réservée à AJLSM&lt;br /&gt;
http-request deny if host_projet_matomo !allowed_ajlsm !projet_matomo_tracking&lt;br /&gt;
&lt;br /&gt;
# Redirection HTTP vers HTTPS&lt;br /&gt;
http-request redirect scheme https if host_projet_matomo !{ ssl_fc }&lt;br /&gt;
&lt;br /&gt;
# Routage vers le backend Matomo&lt;br /&gt;
use_backend back_ssl_projet_matomo if host_projet_matomo&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Attention :&amp;#039;&amp;#039;&amp;#039; cet exemple utilise l&amp;#039;ACL `allowed_ajlsm` déjà présente dans l&amp;#039;infrastructure AJLSM. Vérifier son existence et son contenu avant de déployer la configuration.&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;ACL `path -i` effectue une correspondance exacte des chemins. Elle ne rend pas accessibles les autres pages de l&amp;#039;administration Matomo.&lt;br /&gt;
&lt;br /&gt;
Cette configuration est adaptée au suivi JavaScript standard. Si des fonctionnalités supplémentaires nécessitent d&amp;#039;autres points d&amp;#039;accès, leurs chemins doivent être étudiés séparément avant toute ouverture.&lt;br /&gt;
&lt;br /&gt;
== 5. Configuration du backend ==&lt;br /&gt;
&lt;br /&gt;
=== Exemple HTTPS ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;haproxy&amp;quot;&amp;gt;&lt;br /&gt;
backend back_ssl_projet_matomo&lt;br /&gt;
    server SSLPROJETMATOMO 10.0.0.X:443 check ssl verify none sni str(matomo.exemple.fr)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Remplacer l&amp;#039;adresse IP, le nom du serveur et le nom de domaine par les paramètres du projet.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Sécurité :&amp;#039;&amp;#039;&amp;#039; `verify none` désactive la vérification du certificat présenté par le backend. Cette configuration existe sur AD64, mais ne doit pas être considérée comme une recommandation générale.&lt;br /&gt;
&lt;br /&gt;
Pour une nouvelle installation, privilégier une validation TLS du backend avec une autorité de certification appropriée lorsque l&amp;#039;architecture le permet.&lt;br /&gt;
&lt;br /&gt;
=== Backend HTTP ===&lt;br /&gt;
&lt;br /&gt;
Un backend HTTP peut également être utilisé sur un réseau interne maîtrisé :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;haproxy&amp;quot;&amp;gt;&lt;br /&gt;
backend back_projet_matomo&lt;br /&gt;
    server PROJETMATOMO 10.0.0.X:80 check&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le choix entre HTTP et HTTPS interne dépend de l&amp;#039;architecture du projet et des exigences de sécurité.&lt;br /&gt;
&lt;br /&gt;
== 6. Certificats HTTPS ==&lt;br /&gt;
&lt;br /&gt;
Dans l&amp;#039;infrastructure AJLSM, les certificats publics HAProxy peuvent être gérés par `acme.sh`.&lt;br /&gt;
&lt;br /&gt;
Sur les serveurs HAProxy concernés, vérifier :&lt;br /&gt;
&lt;br /&gt;
* L&amp;#039;existence du certificat pour le domaine Matomo.&lt;br /&gt;
* Sa date d&amp;#039;expiration.&lt;br /&gt;
* La configuration de renouvellement automatique.&lt;br /&gt;
* Le mécanisme de déploiement du certificat dans HAProxy.&lt;br /&gt;
&lt;br /&gt;
Exemple de vérification depuis un poste client :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
openssl s_client \&lt;br /&gt;
  -connect matomo.exemple.fr:443 \&lt;br /&gt;
  -servername matomo.exemple.fr &amp;lt;/dev/null 2&amp;gt;/dev/null \&lt;br /&gt;
  | openssl x509 -noout -subject -issuer -dates&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La présence d&amp;#039;une tâche automatique de renouvellement ne garantit pas à elle seule que le déploiement d&amp;#039;un nouveau certificat fonctionnera. Le renouvellement et le rechargement effectif du certificat doivent être contrôlés.&lt;br /&gt;
&lt;br /&gt;
== 7. Déploiement avec Ansible ==&lt;br /&gt;
&lt;br /&gt;
=== Modification ===&lt;br /&gt;
&lt;br /&gt;
Depuis le Mac d&amp;#039;administration :&lt;br /&gt;
&lt;br /&gt;
# Ouvrir le dépôt `ansible-ajlsm`.&lt;br /&gt;
# Modifier la configuration HAProxy dans les sources Ansible.&lt;br /&gt;
# Ajouter les ACL et le routage du nouveau domaine Matomo.&lt;br /&gt;
# Vérifier que les backends sont définis.&lt;br /&gt;
# Ne pas modifier directement les configurations générées sur les deux serveurs.&lt;br /&gt;
&lt;br /&gt;
=== Vérification de la syntaxe du playbook ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -i inventory ./plays/deploy.haproxy.yml \&lt;br /&gt;
  --limit ajlsm_loadbalancer --syntax-check&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Simulation du déploiement ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -i inventory ./plays/deploy.haproxy.yml \&lt;br /&gt;
  --limit ajlsm_loadbalancer --check --diff&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vérifier :&lt;br /&gt;
&lt;br /&gt;
* Que les modifications sont identiques sur les deux HAProxy.&lt;br /&gt;
* Que seuls les blocs attendus changent.&lt;br /&gt;
* Qu&amp;#039;aucune configuration d&amp;#039;un autre client n&amp;#039;est modifiée.&lt;br /&gt;
* Qu&amp;#039;aucune erreur n&amp;#039;est signalée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Important :&amp;#039;&amp;#039;&amp;#039; le mode `--check` est une simulation. Il ne garantit pas à lui seul le succès du déploiement réel ni le comportement des ACL en production.&lt;br /&gt;
&lt;br /&gt;
=== Déploiement réel ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ansible-playbook -i inventory ./plays/deploy.haproxy.yml \&lt;br /&gt;
  --limit ajlsm_loadbalancer --diff&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vérifier le résultat du playbook sur les deux serveurs.&lt;br /&gt;
&lt;br /&gt;
Si le playbook prévoit un redémarrage ou un rechargement HAProxy, contrôler ensuite que les services restent actifs et que les applications existantes répondent normalement.&lt;br /&gt;
&lt;br /&gt;
== 8. Vérification depuis une connexion extérieure ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Important :&amp;#039;&amp;#039;&amp;#039; effectuer les tests depuis une connexion qui n&amp;#039;utilise ni l&amp;#039;adresse IP publique du bureau ni le VPN AJLSM.&lt;br /&gt;
&lt;br /&gt;
Une connexion autorisée ne permet pas de vérifier correctement le refus d&amp;#039;accès à l&amp;#039;administration.&lt;br /&gt;
&lt;br /&gt;
=== Tester les ressources de suivi ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
MATOMO_URL=&amp;quot;https://matomo.exemple.fr&amp;quot;&lt;br /&gt;
&lt;br /&gt;
for RESOURCE in matomo.js matomo.php; do&lt;br /&gt;
    echo &amp;quot;===== /$RESOURCE =====&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    curl -sS -o /dev/null -w &amp;quot;HTTP %{http_code}\n&amp;quot; \&lt;br /&gt;
        &amp;quot;$MATOMO_URL/$RESOURCE&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résultats attendus pour l&amp;#039;installation standard :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Ressource&lt;br /&gt;
! Résultat attendu&lt;br /&gt;
|-&lt;br /&gt;
| /matomo.js&lt;br /&gt;
| HTTP 200&lt;br /&gt;
|-&lt;br /&gt;
| /matomo.php&lt;br /&gt;
| Accessible sans HTTP 403 HAProxy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Remarque :&amp;#039;&amp;#039;&amp;#039; une réponse HTTP 200 de `matomo.php` sans paramètres de suivi ne constitue pas une preuve de collecte effective.&lt;br /&gt;
&lt;br /&gt;
=== Tester la protection de l&amp;#039;administration ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
curl -sS -o /dev/null -w &amp;quot;HTTP %{http_code}\n&amp;quot; \&lt;br /&gt;
    &amp;quot;$MATOMO_URL/&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résultat attendu depuis une adresse IP extérieure non autorisée :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
HTTP 403&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Tester depuis une adresse autorisée ===&lt;br /&gt;
&lt;br /&gt;
Depuis le réseau AJLSM ou un accès VPN autorisé, vérifier que l&amp;#039;interface Matomo reste accessible et que l&amp;#039;authentification Matomo fonctionne.&lt;br /&gt;
&lt;br /&gt;
== 9. Vérification de la collecte ==&lt;br /&gt;
&lt;br /&gt;
Une fois les règles HAProxy appliquées :&lt;br /&gt;
&lt;br /&gt;
# Ouvrir une application Drupal ou Pleade suivie par Matomo.&lt;br /&gt;
# Naviguer sur plusieurs pages publiques.&lt;br /&gt;
# Vérifier l&amp;#039;envoi des requêtes de suivi dans les outils réseau du navigateur.&lt;br /&gt;
# Vérifier l&amp;#039;apparition des visites dans l&amp;#039;interface Matomo.&lt;br /&gt;
&lt;br /&gt;
Pour une vérification directe en base :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SELECT&lt;br /&gt;
    idsite,&lt;br /&gt;
    COUNT(*) AS visites,&lt;br /&gt;
    MAX(visit_last_action_time) AS derniere_activite&lt;br /&gt;
FROM matomo_log_visit&lt;br /&gt;
GROUP BY idsite;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette requête doit être exécutée dans la base Matomo avec un compte disposant des droits nécessaires.&lt;br /&gt;
&lt;br /&gt;
Voir [[Matomo/Drupal]] et [[Matomo/Debug]].&lt;br /&gt;
&lt;br /&gt;
== 10. Exemple validé : AD64 — octobre 2026 ==&lt;br /&gt;
&lt;br /&gt;
=== Environnement ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Élément&lt;br /&gt;
! Valeur&lt;br /&gt;
|-&lt;br /&gt;
| Serveur Matomo&lt;br /&gt;
| ad64&lt;br /&gt;
|-&lt;br /&gt;
| Domaine&lt;br /&gt;
| ad64-matomo.pleade.com&lt;br /&gt;
|-&lt;br /&gt;
| Adresse privée de la VM&lt;br /&gt;
| 10.0.0.41&lt;br /&gt;
|-&lt;br /&gt;
| Backend HTTPS&lt;br /&gt;
| back_ssl_ad64_matomo&lt;br /&gt;
|-&lt;br /&gt;
| Répartiteurs&lt;br /&gt;
| haproxy-01 et haproxy-02&lt;br /&gt;
|-&lt;br /&gt;
| Applications suivies&lt;br /&gt;
| Drupal Internet et Drupal Salle de lecture&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Configuration HAProxy ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;haproxy&amp;quot;&amp;gt;&lt;br /&gt;
# AD64 MATOMO&lt;br /&gt;
acl host_ad64_matomo hdr(host),host_only -i ad64-matomo.pleade.com&lt;br /&gt;
&lt;br /&gt;
# Points de collecte accessibles publiquement&lt;br /&gt;
acl ad64_matomo_tracking path -i /matomo.js /matomo.php&lt;br /&gt;
&lt;br /&gt;
# Administration réservée à AJLSM&lt;br /&gt;
http-request deny if host_ad64_matomo !allowed_ajlsm !ad64_matomo_tracking&lt;br /&gt;
&lt;br /&gt;
http-request redirect scheme https if host_ad64_matomo !{ ssl_fc }&lt;br /&gt;
&lt;br /&gt;
use_backend back_ssl_ad64_matomo if host_ad64_matomo&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Backend HTTPS existant :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;haproxy&amp;quot;&amp;gt;&lt;br /&gt;
backend back_ssl_ad64_matomo&lt;br /&gt;
    server SSLAD64MATOMO 10.0.0.41:443 check ssl verify none sni str(ad64-matomo.pleade.com)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;ancien backend HTTP `back_ad64_matomo` a été conservé sans modification, bien qu&amp;#039;il ne soit plus utilisé par ce routage.&lt;br /&gt;
&lt;br /&gt;
=== Résultats des tests ===&lt;br /&gt;
&lt;br /&gt;
Les vérifications réalisées le 20 octobre 2026 depuis une connexion extérieure au bureau ont donné :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Test&lt;br /&gt;
! Résultat&lt;br /&gt;
|-&lt;br /&gt;
| https://ad64-matomo.pleade.com/matomo.js&lt;br /&gt;
| HTTP 200&lt;br /&gt;
|-&lt;br /&gt;
| https://ad64-matomo.pleade.com/matomo.php&lt;br /&gt;
| HTTP 200&lt;br /&gt;
|-&lt;br /&gt;
| https://ad64-matomo.pleade.com/&lt;br /&gt;
| HTTP 403&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Les visites Drupal Internet et Salle de lecture avaient également été enregistrées dans MariaDB, avec les identifiants Matomo 2 et 3.&lt;br /&gt;
&lt;br /&gt;
La collecte et la restriction d&amp;#039;accès ont donc été vérifiées.&lt;br /&gt;
&lt;br /&gt;
== 11. Points de vigilance ==&lt;br /&gt;
&lt;br /&gt;
* Ne jamais ouvrir toute l&amp;#039;interface Matomo à Internet uniquement pour permettre la collecte.&lt;br /&gt;
* Ne pas autoriser systématiquement les adresses IP du client à accéder à l&amp;#039;administration.&lt;br /&gt;
* Ne pas bloquer les points de collecte nécessaires aux visiteurs.&lt;br /&gt;
* Ne pas modifier directement les fichiers HAProxy générés par Ansible.&lt;br /&gt;
* Tester depuis une véritable connexion extérieure.&lt;br /&gt;
* Vérifier le certificat HTTPS et son renouvellement.&lt;br /&gt;
* Vérifier que la collecte réelle fonctionne, au-delà du simple chargement du JavaScript.&lt;br /&gt;
&lt;br /&gt;
== 12. Maintenance et diagnostic ==&lt;br /&gt;
&lt;br /&gt;
En cas d&amp;#039;anomalie, vérifier successivement :&lt;br /&gt;
&lt;br /&gt;
# La résolution DNS du domaine Matomo.&lt;br /&gt;
# Le certificat HTTPS présenté par HAProxy.&lt;br /&gt;
# La correspondance de l&amp;#039;ACL `host`.&lt;br /&gt;
# Les règles `http-request deny`.&lt;br /&gt;
# Les chemins autorisés pour le suivi.&lt;br /&gt;
# L&amp;#039;état du backend HAProxy.&lt;br /&gt;
# La disponibilité d&amp;#039;Apache et PHP-FPM sur la VM.&lt;br /&gt;
# La réception effective des visites dans Matomo.&lt;br /&gt;
&lt;br /&gt;
Voir [[Matomo/Debug]] et [[Matomo/Maintenance]].&lt;/div&gt;</summary>
		<author><name>Jlarvers</name></author>
	</entry>
</feed>