我的 SSL 由 cloudFlare 管理,但我更喜欢使用 htaccess 方法来控制站点重定向以使用 HTTPS。我有一个域www.mysite.com
和一个子域demo.mysite.com
。我希望在 www.mysite.com 的完整网站和完整的网站上使用 HTTPS,demo.mysite.com
但我的子域上只有 1 页以防止混合内容。该页面可以包含在 iFrame 中加载的 HTTP 和 HTTPS 链接。目前该页面与整个网站一起以 HTTPS 加载,但我希望它仅以 HTTP 而不是 HTTPS 加载。该页面demo.mysite.com/surf.php
可以通过单击位于的广告来访问demo.mysite.com/ads.php
。
我在我的 htaccess 文件中尝试了这个,但页面surf.php
仍然重定向到 HTTPS。
# FORCE HTTPS
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} \/(surf.php)
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
# DISABLE HTTPS
RewriteCond %{HTTPS} on
RewriteCond %{SCRIPT_FILENAME} !\/(surf.php) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://%{HTTP_HOST}$1 [R=301,L]
我在我的 cloudFlare 设置中禁用了“始终使用 HTTPS”,并且我的 SSL 是灵活的。此外,没有设置页面规则。我更喜欢 htaccess 方法。请帮助我并告诉我该怎么做?