J'ai voulu dépoussiérer quelques régles de réécriture depuis un .htaccess qui fonctionnait trés bien depuis 2ans...
Et poufpouf... dés le premier changement plus aucune régle ne passe.
J'ai donc repris tout à zéro avec un .hataccess des plus simple.
Mon objectif étant le suivant :
Sachant que mon site est à cette adresse physique : /var/www/html/monsite/
On y accéde par l'url :
http://localhost/monsite/
Jusque là tout va bien mon site est accéssible.
Je souhaite simplement que tout ce qui se trouve derrière l'url du site soit renvoyé en get via la variable &url=
Donc ce qui apparait dans la barre d'adresse comme :
http://localhost/monsite/TOUT/LE/RESTE/ENVOYÉ/DANS/UNE/VARIABLE
doit être réécrit via le .htaccess en :
http://localhost/monsite/index.php?url=TOUT/LE/RESTE/ENVOYÉ/DANS/UNE/VARIABLE
Mon fichier index.php vérifie simplement si on récupére bien quelque chose dans $_GET['url'].
Et voici les différents cas qui se présentent.
Si je tape dans le navigateur les urls :
J'ai éssayé en torturant la valeur de RewriteBase dans tous les sens mais rien n'y fait
Voici le .htaccess qui fait défaut se trouvant dans /var/www/html/monsite/:
Et je précise que j'ai bien configuré apache avec "httpd.conf" informant "AllowOverride All" pour "/var/www/html", ainsi que le module rewrite d'apache bien chargé.
#
# Apache/PHP configuration:
#
# Général
Options -Indexes
DirectoryIndex index.php
####################################################
# Urls Rewriting
####################################################
# Activation
Options +FollowSymlinks
RewriteEngine On
# Régles
RewriteRule ^(.*)$ index.php?url=$1