Redirect

Apache2:兩個重定向

  • January 10, 2019

我想將所有 URL 重定向到我的主機上的 https,並將根文件夾重定向到子文件夾。

我的配置:

Redirect permanent / https://myhost.com/ 
RedirectMatch ^/$ /sub-folder/

第一個重定向效果很好,所有http請求都重定向到https,但第二個什麼都不做。

請問有什麼建議嗎?

謝謝。

經過一番研究,我處理了它。問題是第一個重定向被重定向到埠 443,所以第二個重定向必須在 VirtualHost:443 中管理。正如您所說,在 RedirectMatch 指令中需要引號。

非常感謝你。

看來問題出在您的第一條規則上:

Redirect permanent / https://myhost.com/

可以更改為:

Redirect permanent http://myhost.com/ https://myhost.com/

此外,正則表達式似乎不起作用,除非它在引號內,因此^/$應更改為"^/$"

未觀察到第二個重定向,因為第一個重定向發生了無數次。

我可以通過在我的文件中添加幾個條目來調試它,/etc/hosts如下所示:

127.0.0.1 kerneldeimos.local
127.0.0.1 subdomain.kerneldeimos.local

然後我添加了您的重寫規則(為方便起見,使用子域而不是 HTTPS):

Redirect permanent / http://subdomain.kerneldeimos.local
RedirectMatch "^/$" /sub-folder/

在我將配置更改為以下內容後它起作用了:

Redirect permanent http://kerneldeimos.local http://subdomain.kerneldeimos.local
RedirectMatch "^/$" /sub-folder/

引用自:https://serverfault.com/questions/948344