Tente usar (?!: em vez de! (para uma correspondência negativa.
url.redirect = ( "(?!:login|register/payment|resetpassword|account/password|images|css|javascript|minify/minify.php|states)" => "http://www.site.com/$1" )
Estou tentando forçar SSL e não-SSL em certas páginas do meu site com redirecionamentos no arquivo de configuração do Lighttpd. Eu tenho redirecionamentos para SSL funcionando bem:
$HTTP["host"] == "www.site.com:80" {
url.redirect = ( "(login|register/payment|resetpassword|account/password)" => "https://www.site.com/$1" )
}
E agora estou tentando fazer o caminho inverso, mas não consigo fazer o padrão acertar (tinha uma cópia funcionando bem sob o apache com o .htaccess):
$HTTP["host"] == "www.site.com:443" {
url.redirect = ( "!(login|register/payment|resetpassword|account/password|images|css|javascript|minify/minify.php|states)" => "http://www.site.com/$1" )
}
Eu tentei muitas combinações, mas geralmente acabo em um loop de redirecionamento sem fim porque o segundo corresponde a todas as URLs quando está na porta SSL ou não é acionado. Alguma sugestão?