Mevcut sayfadan birini korumak için protokolü (şemayı) çıkaran mutlak URL'ler


85

//somepage.com/resourceUrl biçimini gördüm . Örneğin:

<img src="//remotesite.com/image1.jpg" />

Buradaki önemli nokta, eğer mevcut sayfa ( imgetiketi tanımlayan sayfa ) kullanıyorsa http, uzak siteye istek http üzerinden yapılır. Https ise - https'dir. Bu, tam olarak şifrelenmemiş sayfalara ilişkin tarayıcı uyarılarını ortadan kaldırır.

Sorum şu - bu URL biçimi tüm tarayıcılar için güvenli mi? Ve bu bir standart mı?


4
İlgili: Tüm http: // bağlantılarımı sadece // olarak değiştirebilir miyim? birinci sorunuzu yanıtlar ve Scheme ile ilgili URL'ler ikinci sorunuzu yanıtlar.
Gumbo



Sorunuzdaki terimi kullanmamış olmanıza rağmen, protokole bağlı etiketi ekledim (böylece bu soru daha kolay bulunabilir).
2014

Yanıtlar:


61

bu URL biçiminin tüm tarayıcılarda kullanılması güvenlidir.

Kesin olarak bir şey söyleyemem, ancak farklı tarayıcılarda test edebilmelisiniz.

Ve bu bir standart mı?

Teknik olarak, RFC 3986'ya göre "ağ yolu referansı" olarak adlandırılır . İşte bunun için şema:

  relative-ref  = relative-part [ "?" query ] [ "#" fragment ]

  relative-part = "//" authority path-abempty
                / path-absolute
                / path-noscheme
                / path-empty

Yine de bir <link>veya @importIE7 ve IE8 üzerinde kullanıldığında bir sorun var dosyayı indirir.

İşte bu konuda Paul Irish tarafından yazılan bir gönderi:


1
Paul Irish, gönderisini, mümkün olduğunda kaynakların her zaman https üzerinden sunulması gerektiğini belirtecek şekilde güncellediğini unutmayın. Yukarıda @ Sarfraz tarafından bağlantı verilen gönderiye bakın.
Evan Donovan

1
Google analytics snippet kodu bu şemayı kullanıyor, bu yüzden bu araç birçok web sitesi tarafından kullanılırken tarayıcılar arası olduğuna bahse girerim, aksi takdirde sadece https sürümünü sağlarlardı
Lukas Liesis

22

Evet öyle olduğuna inanıyorum. Paul Irish, Protocol Relative URL terimini icat etti .

Ayrıca, tarayıcılar arası uyumluluğa önem veren HTML5Boilerplate projesinin bir parçası olduğunu da belirtmek isterim .

Not: IE6'da, Paul'ün makalesinde bahsedilen google analytics ile ilgili bir uç durum var. Yani mükemmel değil.


Bu artık doğru değil, stackoverflow.com/a/37609402/2237601 veya buraya bakın , şimdi kullanıyorlar https://. Ayrıca burada , protokol şemasını ihmal etmenin neden iyi bir fikir olmayabileceğine bakın.
bg17aw

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.