簡體   English   中英

使用htaccess將安全域重定向到安全子域

[英]Redirect secured domain to secured subdomain using htaccess

我有3個域和一個托管。 我正在嘗試通過htaccess對我的所有三個域使用相同的托管。 因此,我在域名上創建了一個與托管鏈接的子域名,如下所示。

www.site1.com [與托管鏈接的主域]

site2.site1.com [ www.site2.com子域]

site3.site1.com [ www.site3.com子域]

我要實現的是,用戶不應轉到子域site2.site1.com ,而只能訪問www.site2.com並且請求將在后端發送到site2.site1.com

到這里為止,所有工作都已完成並且運行良好。 唯一的問題是當我在站點上添加SSL之后。 對於所有這些域和子域,我都有SSL 如果用戶訪問非SSL,則應將其重定向到SSL。 一些SSL運作良好,但是當我為所有SSL添加SSL時,我開始收到500錯誤。

這是我的.htaccess文件

RewriteEngine On
DirectoryIndex index.php

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} ^site2.com
RewriteRule ^(.*) https://site2.site1.com/$1 [P]
RewriteCond %{HTTP_HOST} ^www.site2.com
RewriteRule ^(.*) https://site2.site1.com/$1 [P]

RewriteCond %{HTTP_HOST} ^site3.com
RewriteRule ^(.*) https://site3.site1.com/$1 [P]
RewriteCond %{HTTP_HOST} ^www.site3.com
RewriteRule ^(.*) https://site3.site1.com/$1 [P]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

當我在重定向鏈接上添加https時,它開始給我500錯誤,而當我重定向到http ,它將不會加載我的頁面,因為非安全站點http://site2.site1.com將通過安全https://www.site2.com加載https://www.site2.com ,結果將不會顯示任何內容。

在這里,我需要幫助來解決此問題。 我查看了不同的問題,但沒有找到與我相關的任何問題,因為我需要保持.htaccess與重定向和SSL 此外,如果未在URL中添加,我還需要重定向到www一。

任何幫助將不勝感激。

就像我在這里經歷的所有時間一樣,我自己都解決了自己的問題。 解決我的問題的方法是以下htaccess

RewriteEngine On
DirectoryIndex index.php

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} ^site2.com
RewriteRule ^(.*) site2/$1
RewriteCond %{HTTP_HOST} ^www.site2.com
RewriteRule ^(.*) site2/$1

RewriteCond %{HTTP_HOST} ^site3.com
RewriteRule ^(.*) site3/$1
RewriteCond %{HTTP_HOST} ^www.site3.com
RewriteRule ^(.*) site3/$1

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

這樣,我沒有將URL指向具有https subdomain ,而是將其引用到目錄中,因為路徑與此相同,現在當我輸入帶有httpsURL ,頁面打開並且不會出現任何錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM