1

Возможный дубликат:
Заставить браузер загружать версию сайта «https», а не «http»?

Я открыт для предложений, если это возможно.

3 ответа3

3

Нет, потому что если веб-сайт не поддерживает https. Например, https://google.com выводит вас на http://google.com https://amazon.com выдает большое красное неприятное предупреждение. https://apple.com даже не загружает страницу.

2

То, что вы просите, это плагин Firefox под названием HTTPS-Everywhere. Похоже, что Chrome API не обеспечивает достаточного контроля для перезаписи URL такого уровня.

Даже если бы вы могли, есть причины, по которым не все используют https, кэширование, виртуальные хосты и т.д. Есть недавняя запись в слэшдот, в которой освещены некоторые причины. Вы не сможете слепо сказать «http => https», поэтому вам понадобится интеллектуальный плагин, подобный описанному выше, который не существует для Chrome.

0

На самом деле это не ответ, но вот что вы можете сделать, если у вас есть FireBug или консоль JavaScript ... используя JavaScript, вы проверите наличие HTTPS-версии сайта и перейдете к ней, если она существует. ... в противном случае это просто предупредит вас, что HTTPS-версия этого сайта не существует.

Может быть, это просто даст представление о том, что вы спрашиваете? Я не знаю...

var jQuery = jQuery || null;

if (!jQuery){ // Load in jQuery
    (function(){j=document.createElement("SCRIPT");j.src="http://code.jquery.com/jquery-latest.pack.js";document.getElementsByTagName("HEAD")[0].appendChild(j);})() 
}
var timeout = window.setInterval(function() { // wait for jQuery to load
    if(jQuery) {
        window.clearInterval(timeout);  // once jQuery is loaded kill the interval
        (function($) {  // make sure $=jQuery
            $(document).ready(function() { // on document ready... 
                if(document.location.protocol != 'https:') { // check the protocol to see if we're already on https
                    var url = document.location.href.replace('http:','https:'); // if not, try to load the https version
                    $.ajax({
                        type: 'GET',
                        url: url,
                        success: function(r) {
                            window.location = url; // if successful, load the https version
                        },
                        error : function(r) {
                            alert('https does not exist for this site'); // 
                        }
                    });
                }else {
                    alert('already on https');
                }
            });
        })(jQuery);
    };
},1000);

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .