Quelle est la différence entre %1
et $1
dans .htaccess?
Par exemple,
# to remove www
RewriteCond %{HTTP_Host} ^(\w+)\.mydomain\.com [NC]
RewriteRule .* http://mydomain.com/%1 [R=301,L]
# versus
# RewriteRule .* http://mydomain.com/$1 [R=301,L]
J'utilisais Feuille de triche de Dave Child Child's et Feuille de triche de Jackol's .htaccess ainsi que Apache mod_rewrite docs mais une aide supplémentaire serait géniale .
%1
Fait référence à un motif correspondant à une condition RewriteCond
, tandis que $1
fait référence à un motif correspondant à l'intérieur d'un RewriteRule
.
Plus génériquement, utilisez %n
Pour faire référence aux correspondances numérotées de RewriteCond
condition de condition des modèles de regex et utilisez $n
Pour faire référence à des correspondances numérotées de RewriteRule
modèles de regex.