我已經使用ELB在AWS設置了從http重定向到https。程序如下。在Chrome和FireFox中使用AWS的ELB從Http重定向到https
在該文件中的.htaccess,把下面的X - 轉發,原代碼
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
</VirtualHost>
然後.htaccess文件放入該文件夾我的網站停留的index.php裏面。
我在Chrome,FireFox和Safari上測試過。 Chrome和Safari都可以工作,但FireFox不支持。
在Chrome和Safari中,當我在瀏覽器中輸入www.domainname.com時,我在瀏覽器中看到更改爲https://www.domainname.com。和Safari一樣。
但是在Chrome中,當我輸入www.domainname.com時,頁面將加載http://www.domainname.com。即使我輸入http://www.domainname.com,它本身也改爲https://www.domainname.com。
什麼可能是錯的? FireFox的重定向功能仍然無法使用嗎?
YesI清除瀏覽器緩存已經幾次了。 FireFox仍然是一樣的。 – batuman
瀏覽器不顯示它是不安全的。但是我沒有在前面看到https。 – batuman
我從AWS獲得了一條線索的回覆,那就是ELB只是使用X-Forwarded-Proto插入重定向信息。所以實際的重定向實現需要在實例中發生,在Apache中。我需要弄清楚如何。 – batuman