Afin que Symfony puisse correctement utiliser le module rewrite d'Apache, les directives Rewrite* doivent être autorisées, ce qui n'est pas le cas dans la configuration d'Apache 2.4 par défaut. Il faut autoriser certaines directives via la directive AllowOverride.
Sous Ubuntu ou par défaut depuis Apache 2.3.9, la directive AllowOverride vaut None par défaut alors que pour le module Rewrite il faut avoir à minima FileInfo.
De même, le fichier .htaccess généré utilise la directive DirectoryIndex pour spécifier le fichier par défaut. Cette directive nécessite l'option AllowOverrideIndexes.
Enfin, pour pouvoir lire le fichier .htaccess, il faut également la surcharge Options
Il serait intéressant que la documentation est fasse état afin de simplifier la phase d'installation.
Proposition de solution
Sur la base d'une copie de gramc3 dans /var/www/gramc3 et d'un lien symbolique ln -s /var/www/gramc3/public /var/www/html/gramc3 avec la variable export BASE="/gramc3" dans /etc/apache2/envvars comme dans la documentation.
Un exemple minimal de virtualhost incluant les valeurs nécessaires pour la directive AllowOverride :
Description du problème
Afin que Symfony puisse correctement utiliser le module rewrite d'Apache, les directives
Rewrite*
doivent être autorisées, ce qui n'est pas le cas dans la configuration d'Apache 2.4 par défaut. Il faut autoriser certaines directives via la directive AllowOverride.Sous Ubuntu ou par défaut depuis Apache 2.3.9, la directive
AllowOverride
vautNone
par défaut alors que pour le module Rewrite il faut avoir à minimaFileInfo
. De même, le fichier.htaccess
généré utilise la directiveDirectoryIndex
pour spécifier le fichier par défaut. Cette directive nécessite l'optionAllowOverride
Indexes
. Enfin, pour pouvoir lire le fichier .htaccess, il faut également la surchargeOptions
Il serait intéressant que la documentation est fasse état afin de simplifier la phase d'installation.
Proposition de solution
Sur la base d'une copie de gramc3 dans
/var/www/gramc3
et d'un lien symboliqueln -s /var/www/gramc3/public /var/www/html/gramc3
avec la variableexport BASE="/gramc3"
dans/etc/apache2/envvars
comme dans la documentation.Un exemple minimal de virtualhost incluant les valeurs nécessaires pour la directive
AllowOverride
:Pour l'utilisation de la Fédération, il faut que le site soit accessible via HTTPS donc une version minimale serait