перенаправление http на https с использованием .htaccess сбой

У меня есть веб-сайт, который использует CloudFlare flexible SLL, размещенный на HostGator.

Я хочу перенаправить все HTTP-запросы на соответствующий HTTPS URL. Без исключений. Я намерен поместить правило наверху с помощью L , поэтому, когда оно будет обработано, все следующие правила перезаписи не должны проверяться.

Мой текущий код таков:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

Но это приводит к бесконечным перенаправлениям на Версия HTTPS. Вот HTTP-заголовки FireFox Live:

https: // пример. net /

GET / HTTP / 1.1
Хост: example.net
Пользовательский агент: Mozilla / 5.0 (Windows NT 10.0; WOW64; rv: 51.0) Gecko / 20100101 Firefox / 51,0
Принять: text / html, application / xhtml + xml, application / xml; q = 0,9, / ; q = 0,8
Accept-Language: da, en-US; q = 0,7, en; q = 0,3
Accept-Encoding: gzip, deflate, br
DNT: 1
Соединение: keep-alive
Upgrade-Insecure-Requests: 1

HTTP / 2.0 301 перемещен навсегда
Дата: среда, 15 февраля 2017 г. 15:20:35 GMT
Content-Type: text / html; charset = iso-8859-1
Set-Cookie: __cfduid = d07edac1644bccce1642d2c845767f9951487172035; expires = Thu, 15-Feb-18 15:20:35 GMT; путь = /; домен = .example.net; HttpOnly
Местоположение: https://example.net/
Сервер: cloudflare-nginx
cf-ray: 15 февраля 2017 г. 15:20:35 GMT
Content-Type: text / html; charset = iso-8859-1
Расположение: https://example.net/
Сервер: cloudflare-nginx
cf-ray: 3319bea7ddfb3cfb-CPH
X-Firefox-Spdy: h2


https://example.net/

GET / HTTP / 1.1
Хост: example.net
Пользовательский агент: Mozilla / 5.0 (Windows NT 10.0; WOW64; rv: 51.0) Gecko / 20100101 Firefox / 51.0
Принять: текст / html, application / xhtml + xml, application / xml; q = 0.9, / ; q = 0,8
Accept-Language: da, en-US; q = 0,7, en; q = 0,3
Accept-Encoding: gzip, deflate, br
Cookie: __cfduid = d07edac1644bccce1642d2c845767f9951487172035
DNT: 1
Соединение: keep-alive
Небезопасные запросы обновления: 1 [12102 Moved HTTP Permanent / Permanently HTTP Permanent /

Дата: Среда, 15 февраля 2017 г., 15:20:36 GMT
Content-Type: text / html; charset = iso-8859-1
Расположение: https://example.net/
Сервер: cloudflare-nginx
cf-ray: 3319beaaae7e3cfb-CPH
X-Firefox-Spdy: h2

Я встречал и другие подобные вопросы, но большинство предлагаемых решений представляют собой вариации того, что я использую в настоящее время, и я их пробовал (но, пожалуйста, не стесняйтесь рекомендовать то, что сработало для вас , и я попробую).

1
задан 16 February 2017 в 10:22
2 ответа

Cloudflare Flexible SSL : biztonságos kapcsolat a látogató és a CloudFlare között, de nincs biztonságos kapcsolat a CloudFlare és a webszerver között . Nem kell SSL-tanúsítvánnyal rendelkeznie a webkiszolgálón, de látogatói továbbra is úgy látják, hogy a webhely HTTPS-engedélyezett. Forrás

Mivel a szerverről irányít a HTTPS-re, nem a Cloudflare oldalszabály használatával, az ügyfél még a HTTPS kérései is mindig kiváltják az átirányítási szabályt.

1. Client ---> HTTP ----> Cloudflare CDN ----> HTTP ----> Your server
                                                                 | 
                         <-------  Response: Redirect to HTTPS <- 

2. Client ---> HTTPS ----> Cloudflare CDN ----> HTTP ----> Your server
                                                                 | 
                         <-------  Response: Redirect to HTTPS <-

3. Client ---> HTTPS ----> Cloudflare CDN ----> HTTP ----> Your server
                                                                 | 
                         <-------  Response: Redirect to HTTPS <-

A Cloudflare nem beszél HTTPS-t a webszerverével, és ez végtelen átirányítási ciklust hoz létre.

Annak feloldásához, hogy el kell távolítania az átirányítást a .htaccess fájlból, és helyette be kell állítania egy Cloudflare oldalszabályt.

3
ответ дан 3 December 2019 в 17:03
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

ਅੰਸ਼ਕ ਰੂਪ ਤੋਂ ਲਿਆ ਗਿਆ: https://stackoverflow.com/a/26623196/2774776

2
ответ дан 3 December 2019 в 17:03

Теги

Похожие вопросы