所以我必须通过HTTP强制所有连接转到特定文件夹上的HTTPS(例如“public_html / folder1”)。我在某个地方找到了一个教程,并在.htaccess文件中使用了以下内容:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} folder
RewriteRule ^(.*)$ https://www.yourdomain.com/folder/$1 [R,L]
问题是,我在该文件夹中有一个文件夹,应该允许通过HTTP访问,而不仅仅是HTTPS,我该怎么做例外? (意思是,我想要允许通过HTTP访问folder1 / subfolder1)。
由于
答案 0 :(得分:3)
试试这个:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} ^/folder/((?!subfolder).*)$
RewriteRule ^(.*)$ https://www.yourdomain.com/folder/$1 [R,L]
模式^/folder/((?!subfolde).*)
与请求uri字符串/folder/.*
匹配,当字符串为/folder/subfolder/.*
时,它不匹配,因此不应用规则。