是否可以将我网站的特定页面使用 https重定向到 http?

问题描述

目标

我想将我网站的特定页面重定向到 http。

背景

我有以下 .htacess

Options All -Indexes
RewriteEngine On 
RewriteRule ^(.*)\.html $1\.PHP [L]
RedirectMatch ^/*$  https://**mydomain_name**/files/index.PHP   
Options +SymLinksIfOwnerMatch 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /files/error.PHP [L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

它允许我将所有内容重定向到 https(这很好用)

问题

是否可以将地址包含internal(https://mydomain_name/internal/)的所有页面重定向到http(而不是https)?

解决方法

我们最好保持条件不处理对包含内部的 URI 的请求,而不是首先将它们重定向到 https,然后针对特别提到的 URI 移回 http。

Options All -Indexes
RewriteEngine On 
RewriteRule ^(.*)\.html $1\.php [L]
RedirectMatch ^/*$  https://**mydomain_name**/files/index.php   
Options +SymLinksIfOwnerMatch 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /files/error.php [L]
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/internal [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]