我试图在我的站点的某些页面上强制使用SSL和非SSL,并在Lighttpdconfiguration文件中redirect。 我有redirect到SSL工作正常:
$HTTP["host"] == "www.site.com:80" { url.redirect = ( "(login|register/payment|resetpassword|account/password)" => "https://www.site.com/$1" ) }
而现在我试图去其他方式,但我不能得到的模式打右(有一个副本在Apache下用.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" ) }
我尝试过很多种组合,但是通常会导致无尽的redirect循环,因为第二个匹配SSL端口上的所有URL,或者根本不会触发。 有什么build议么?
尝试使用(?!:而不是!(对于否定的匹配。
url.redirect = ( "(?!:login|register/payment|resetpassword|account/password|images|css|javascript|minify/minify.php|states)" => "http://www.site.com/$1" )