0

我正在尝试设置一个 apacheRedirectMatch以将所有流量从一个虚拟主机发送到另一个虚拟主机(启用 SSL 的标准)但是,由于网站的中文版本上的某些内容,(优酷视频不支持 SSL 嵌入)我必须保持中文/zh非 SSL 虚拟主机上的版本 ( )。

所以我的目标是重定向来自非 ssl 的所有流量,使用 RedirectMatch 否定 /zh,如下所示:

RedirectMatch ^/([^zh]{0,2}.*) https://domain.com/$1

然后在 SSL vhost 上将 /zh 上的任何内容重定向回非 ssl,如下所示:

RedirectMatch ^/(zh.*) http://domain.com/$1

然而,这似乎给了我一个重定向循环。我认为非 ssl 正则表达式有问题,但我想不通。

任何帮助或替代建议将不胜感激。

干杯!

编辑

我什至现在已经为此尝试了 mod_rewrite:

非 SSL -

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/zh
RewriteRule ^(.*)$ https://domain.com$1 [R=301,L]

SSL -

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/zh
RewriteRule ^(.*)$ http://domain.com$1 [R=301,L]

然而,这会将 /zh 重定向到https://domain.com/index.php :S 对这一切感到非常困惑。

4

0 回答 0