Разница между $1 и% 1 в .htaccess
В чем разница между %1
и $1
в .htaccess?
Например,
# 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]
Я использую Dave Child.htaccess обманывает и Jackol. htaccess, а также Apache mod_rewrite docs, но дополнительная помощь будет отличной.
Ответы
Ответ 1
%1
Относится к шаблону, согласованному в RewriteCond
, а $1
относится к шаблону, сопоставляемому внутри RewriteRule
.
В общем случае используйте %n
для обозначения нумерованных совпадений из шаблонов регулярных выражений RewriteCond
и используйте $n
для обозначения нумерованных совпадений от шаблонов регулярных выражений RewriteRule
.