Разница между $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.