我有一个特定的子域,需要为该子域上的所有页面建立SSL连接。
这是我目前的.htaccess
脚本:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,L]
我在子域上有一个页面,它必须没有SSL访问权限(导致在没有证书的情况下访问另一台服务器上的文件时出现问题)。
我的mod_rewrite知识非常有限。我已经完成了搜索但找不到我需要的东西。
我的问题是,必须有https的页面称为'tutorial.php'。有没有办法将所有页面除 tutorial.php重定向到https?
我猜在伪代码中,RewriteCond类似于:
RewriteCond %{SERVER_PORT} 80 AND {WEB_PAGE}!='tutorial.php'
由于
答案 0 :(得分:1)
试试这个:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !/tutorial\.php
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,L]
RewriteCond %{HTTPS} on
RewriteRule ^tutorial\.php$ http://%{HTTP_HOST}/tutorial.php [R,L]