<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wiki.jordan-lenuff.com/index.php?action=history&amp;feed=atom&amp;title=Technique%2FApache%2FGestion_dynamique_des_dossiers</id>
	<title>Technique/Apache/Gestion dynamique des dossiers - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.jordan-lenuff.com/index.php?action=history&amp;feed=atom&amp;title=Technique%2FApache%2FGestion_dynamique_des_dossiers"/>
	<link rel="alternate" type="text/html" href="https://wiki.jordan-lenuff.com/index.php?title=Technique/Apache/Gestion_dynamique_des_dossiers&amp;action=history"/>
	<updated>2026-05-02T12:35:17Z</updated>
	<subtitle>Historique des révisions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.34.0</generator>
	<entry>
		<id>https://wiki.jordan-lenuff.com/index.php?title=Technique/Apache/Gestion_dynamique_des_dossiers&amp;diff=620&amp;oldid=prev</id>
		<title>Jordan : Page créée avec « == Présentation == Cette page a pour objet de proposer des configurations permettant de publier dynamiquement des dossiers dans Apache. Cela permet de ne pas à avoir à… »</title>
		<link rel="alternate" type="text/html" href="https://wiki.jordan-lenuff.com/index.php?title=Technique/Apache/Gestion_dynamique_des_dossiers&amp;diff=620&amp;oldid=prev"/>
		<updated>2020-05-14T09:30:56Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « == Présentation == Cette page a pour objet de proposer des configurations permettant de publier dynamiquement des dossiers dans Apache. Cela permet de ne pas à avoir à… »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Présentation ==&lt;br /&gt;
Cette page a pour objet de proposer des configurations permettant de publier dynamiquement des dossiers dans Apache. Cela permet de ne pas à avoir à modifier la configuration Apache lors d'un ajout d'un(e) dossier/arborescence supplémentaire.&lt;br /&gt;
&lt;br /&gt;
== Mise en œuvre ==&lt;br /&gt;
Dans le cas où il n'est pas envisageable de modifier la configuration Apache à chaque création d'un nouveau dossier, il est possible de donner accès à des dossiers correspondant à une expression régulière (voir [https://httpd.apache.org/docs/2.4/fr/mod/core.html#directory la documentation à propos de la directive Directory]). Voici un exemple :&lt;br /&gt;
&lt;br /&gt;
=== Exemple simple ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;apache&amp;quot;&amp;gt;&lt;br /&gt;
# Appli de recette&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	ServerAdmin mymail@mydomain.com&lt;br /&gt;
	DocumentRoot &amp;quot;/data/www/REC&amp;quot;&lt;br /&gt;
	ServerName rec-appli.mydomain.com&lt;br /&gt;
	RewriteEngine On&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	php_flag log_errors on&lt;br /&gt;
	php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;8&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/rec-appli.mydomain.com_php_error.log&lt;br /&gt;
	LogLevel debug&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;Directory ~ &amp;quot;/data/www/REC/appli.*&amp;quot;&amp;gt;&lt;br /&gt;
		Options FollowSymLinks&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Order allow,deny&lt;br /&gt;
		Allow from All&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans cet exemple, seuls les dossiers commençant par &amp;lt;code&amp;gt;/data/www/REC/appli&amp;lt;/code&amp;gt; seront publiés.&lt;br /&gt;
&lt;br /&gt;
=== Exemple plus recherché ===&lt;br /&gt;
Autre exemple un peu plus recherché :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;apache&amp;quot;&amp;gt;&lt;br /&gt;
Define app_name myapp.mydomain.com&lt;br /&gt;
# Instance de développement&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	Define url_app dev-${app_name}&lt;br /&gt;
	ServerName ${url_app}&lt;br /&gt;
	DocumentRoot &amp;quot;/data/www/DEV&amp;quot;&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	LogLevel debug&lt;br /&gt;
	&lt;br /&gt;
	php_flag log_errors on&lt;br /&gt;
	php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;8&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/${app_name}/${url_app}_php_error.log&lt;br /&gt;
&lt;br /&gt;
	AliasMatch &amp;quot;^/(\w*)/(.*)$&amp;quot; &amp;quot;/data/www/DEV/$1/MyApp/public/$2&amp;quot;&lt;br /&gt;
	&amp;lt;Directory ~ &amp;quot;/data/www/DEV/\w*/MyApp/public&amp;quot;&amp;gt;&lt;br /&gt;
		DirectoryIndex index.php&lt;br /&gt;
		Options FollowSymLinks&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Require all granted&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
	UnDefine url_app&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
UnDefine app_name&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exemple plus dynamique ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;apache&amp;quot;&amp;gt;&lt;br /&gt;
Define app_name myapp.mydomain.com&lt;br /&gt;
Define doc_root_parent &amp;quot;/data/www&amp;quot;&lt;br /&gt;
Define doc_root_child &amp;quot;MyApp/public&amp;quot;&lt;br /&gt;
# Instance de développement&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	Define url_app dev-${app_name}&lt;br /&gt;
	ServerName ${url_app}&lt;br /&gt;
	DocumentRoot &amp;quot;${doc_root_parent}/DEV&amp;quot;&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/2.4.12/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/2.4.12/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	LogLevel debug&lt;br /&gt;
	&lt;br /&gt;
	php_flag log_errors on&lt;br /&gt;
	php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;8&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/${app_name}/${url_app}_php_error.log&lt;br /&gt;
&lt;br /&gt;
	AliasMatch &amp;quot;^/([[:alpha:]]+)(/.*)?&amp;quot; &amp;quot;${doc_root_parent}/DEV/$1/${doc_root_child}$2&amp;quot;&lt;br /&gt;
	&amp;lt;Directory &amp;quot;${doc_root_parent}/DEV/*/${doc_root_child}&amp;quot;&amp;gt;&lt;br /&gt;
		DirectoryIndex index.php&lt;br /&gt;
		Options FollowSymLinks&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Require all granted&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
	UnDefine url_app&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Instance de recette&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	Define url_app rec-${app_name}&lt;br /&gt;
	ServerName ${url_app}&lt;br /&gt;
	DocumentRoot &amp;quot;${doc_root_parent}/REC/${doc_root_child}&amp;quot;&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	LogLevel debug	&lt;br /&gt;
	&lt;br /&gt;
    php_flag log_errors on&lt;br /&gt;
    php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;32767&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/${app_name}/${url_app}_php_error.log&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;Directory &amp;quot;${doc_root_parent}/REC/${doc_root_child}&amp;quot;&amp;gt;&lt;br /&gt;
		DirectoryIndex index.html index.php&lt;br /&gt;
		Options FollowSymLinks&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Require all granted&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
	UnDefine url_app&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Instance de intégration&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	Define url_app int-${app_name}&lt;br /&gt;
	ServerName ${url_app}&lt;br /&gt;
	DocumentRoot &amp;quot;${doc_root_parent}/INTEGRATION/${doc_root_child}&amp;quot;&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	LogLevel debug	&lt;br /&gt;
	&lt;br /&gt;
    php_flag log_errors on&lt;br /&gt;
    php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;32767&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/${app_name}/${url_app}_php_error.log&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;Directory &amp;quot;${doc_root_parent}/INTEGRATION/${doc_root_child}&amp;quot;&amp;gt;&lt;br /&gt;
		DirectoryIndex index.html index.php&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Require all granted&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
	UnDefine url_app&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Instance de préproduction&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
	Define url_app pprd-${app_name}&lt;br /&gt;
	ServerName ${url_app}&lt;br /&gt;
	DocumentRoot &amp;quot;${doc_root_parent}/PREPROD/${doc_root_child}&amp;quot;&lt;br /&gt;
	ErrorLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_error.log 10M&amp;quot;&lt;br /&gt;
	CustomLog &amp;quot;|/local/www/current/bin/rotatelogs -t -l -n 15 /data/logs/${app_name}/${url_app}_http_access.log 10M&amp;quot; combined&lt;br /&gt;
	LogLevel debug	&lt;br /&gt;
&lt;br /&gt;
	php_flag log_errors on&lt;br /&gt;
	php_flag display_errors off&lt;br /&gt;
	# 32767 for E_ALL, 8 for E_NOTICE, 2 for E_WARNING, 1 for E_ERROR&lt;br /&gt;
	# More information on https://www.php.net/manual/fr/errorfunc.constants.php&lt;br /&gt;
	php_value error_reporting &amp;quot;32767&amp;quot;&lt;br /&gt;
	php_value error_log /data/logs/${app_name}/${url_app}_php_error.log&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;Directory &amp;quot;${doc_root_parent}/PREPROD/${doc_root_child}&amp;quot;&amp;gt;&lt;br /&gt;
		DirectoryIndex index.html index.php&lt;br /&gt;
		AllowOverride All&lt;br /&gt;
		Require all granted&lt;br /&gt;
		SetEnv APP_ENV &amp;quot;pprd&amp;quot;&lt;br /&gt;
	&amp;lt;/Directory&amp;gt;&lt;br /&gt;
	UnDefine url_app&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
UnDefine doc_root_child&lt;br /&gt;
UnDefine doc_root_parent&lt;br /&gt;
UnDefine app_name&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jordan</name></author>
		
	</entry>
</feed>