A RewriteCond
относится только к непосредственно следующим RewriteRule
. Таким образом, в вашем случае обе директивы RewriteCond
относятся только к первой директиве RewriteRule
, а вторая RewriteRule
не имеет связанных директив RewriteCond
.
Вы можете исправить это в своем примере, объединив два RewriteRule
s:
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteCond %{HTTP_HOST} ^([a-zA-Z]{3,6})\.example\.com$
RewriteRule ^(index|export)/([a-z]{2})/([0-9]{1,2})/([0-9]{1,2})$ http://www.example.com/$1.php?o=%1&lg=$2&site=$3&counter=$4 [NC,L]
Также обратите внимание на использование $n
вместо %n
, поскольку $n
относится к совпадению n-й группы RewriteRule
, тогда как %n
относится к совпадению n-й группы последний успешный RewriteCond
.