it-swarm-id.com

Mengapa tiba-tiba saya mendapatkan masalah "di Firefox?"

Pagi ini, setelah memutakhirkan peramban Firefox saya ke versi terbaru (dari 22 menjadi 23), beberapa aspek kunci dari kantor (situs web) saya berhenti berfungsi.

Melihat log Firebug, kesalahan berikut dilaporkan:

Blocked loading mixed active content "http://code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css"
Blocked loading mixed active content "http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"`

antara kesalahan lain yang disebabkan oleh yang terakhir dari dua di atas tidak dimuat.

Apa yang dimaksud di atas dan bagaimana cara mengatasinya?

332
Appulus

Saya menemukan posting blog ini yang membersihkan beberapa hal. Mengutip bit yang paling relevan:

Konten Campuran Aktif sekarang diblokir secara default di Firefox 23!

Apa itu Konten Campuran?
Ketika pengguna mengunjungi halaman yang dilayani melalui HTTP, koneksi mereka terbuka untuk serangan penyadapan dan man-in-the-middle (MITM). Ketika pengguna mengunjungi halaman yang dilayani melalui HTTPS, koneksi mereka dengan server web diautentikasi dan dienkripsi dengan SSL dan karenanya dilindungi dari serangan eavesdropper dan MITM.

Namun, jika halaman HTTPS menyertakan konten HTTP, bagian HTTP dapat dibaca atau dimodifikasi oleh penyerang, meskipun halaman utama dilayani melalui HTTPS. Ketika halaman HTTPS memiliki konten HTTP, kami menyebut konten itu "campuran". Halaman web yang dikunjungi pengguna hanya sebagian dienkripsi, karena beberapa konten diambil tidak dienkripsi melalui HTTP. Blocker Konten Campuran memblokir permintaan HTTP tertentu pada halaman HTTPS.

Resolusi, dalam kasus saya, adalah hanya memastikan jquery termasuk adalah sebagai berikut (perhatikan penghapusan protokol):

<link rel="stylesheet" href="//code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css" type="text/css">
<script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"></script>

Perhatikan bahwa 'perbaikan' sementara adalah dengan mengklik ikon 'perisai' di sudut kiri atas bilah alamat dan pilih 'Nonaktifkan Perlindungan pada Halaman Ini', meskipun ini adalah tidak direkomendasikan untuk alasan yang jelas.

UPDATE: Tautan ini dari halaman dukungan Firefox (Mozilla) juga berguna dalam menjelaskan apa yang merupakan konten campuran dan, seperti yang diberikan dalam paragraf di atas, benar-benar memberikan rincian tentang cara menampilkan halaman tanpa:

Sebagian besar situs web akan terus bekerja secara normal tanpa ada tindakan apa pun dari Anda.

Jika Anda perlu mengizinkan konten campuran ditampilkan, Anda dapat melakukannya dengan mudah:

Klik ikon perisai Mixed Content Shield di bilah alamat dan pilih Nonaktifkan Perlindungan pada Halaman Ini dari menu dropdown.

Ikon di bilah alamat akan berubah menjadi segitiga peringatan oranye Ikon Identitas Peringatan untuk mengingatkan Anda bahwa konten tidak aman sedang ditampilkan.

Untuk mengembalikan tindakan sebelumnya (memblokir kembali konten campuran), cukup muat ulang halaman.

398
Appulus

Itu berarti Anda menelepon http dari https. Anda dapat menggunakan src="//url.to/script.js" dalam tag skrip Anda dan itu akan mendeteksi secara otomatis.

Bergantian Anda dapat menggunakan https di src Anda bahkan jika Anda akan menerbitkannya ke halaman http. Ini akan menghindari potensi masalah yang disebutkan dalam komentar.

127

Dengan tidak adanya fitur daftar putih, Anda harus membuat Pilihan "semua" atau "tidak ada". Anda dapat menonaktifkan pemblokiran konten campuran sepenuhnya.


The Nothing Choice

Anda harus menonaktifkan pemblokiran konten campuran secara permanen untuk profil aktif saat ini.

Di "Bilah Luar Biasa," ketikkan "about: config". Jika ini adalah pertama kalinya Anda, Anda akan mendapatkan "Ini mungkin membatalkan garansi Anda!" pesan.

Ya, Anda akan berhati-hati. Ya, Anda berjanji!

Temukan security.mixed_content.block_active_content . Tetapkan nilainya menjadi false .


Semua Pilihan

iDevelApp Jawabannya mengagumkan.

51
DRaehal

Jika Anda ingin mengizinkan permintaan Konten Campuran, tambahkan tag di bawah ini ke <head> tag.

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

Jika Anda ingin memblokir kemudian tambahkan tag di bawah ini ke tag <head>:

<meta http-equiv="Content-Security-Policy" content="block-all-mixed-content">
21
tapas talukder

Jika Anda menggunakan layanan internal melalui AJAX, pastikan url menunjuk ke https, ini menghapus kesalahan bagi saya.

Awal AJAX URL: " http://XXXXXX.com/Core.svc/ " + ApiName
Koreksi AJAX URL: " https://XXXXXX.com/Core.svc/ " + ApiName,

10
Bryan Cote-Chang

Diberikan kesalahan karena keamanan. untuk ini silakan gunakan "https" bukan "http" di url situs web.

Sebagai contoh :

   "https://code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css"
   "https://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"
9
Amit Naraniwal

Pada halaman yang relevan yang membuat konten campuran https ke panggilan http yang tidak dapat diakses, kami dapat menambahkan entri berikut di yang relevan dan menyingkirkan kesalahan konten campuran.

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
7
sramay

Saya memiliki masalah yang sama karena saya membeli template CSS dan mengambil javascript file javascript eksternal melalui http://whatever.js.com/javascript.js. Saya pergi ke halaman itu di browser saya dan kemudian mengubahnya menjadi https://whatever... menggunakan SSL dan itu berhasil, jadi di tag javascript HTML saya, saya baru saja mengubah URL untuk menggunakan https bukan http dan berhasil.

5
Edmund

Untuk memaksa pengalihan pada protokol https, Anda juga dapat menambahkan arahan ini di .htaccess pada folder root

RewriteEngine on

RewriteCond %{REQUEST_SCHEME} =http

RewriteRule (.*) https://%{HTTP_Host}%{REQUEST_URI} [R=301,L]
4
Massimiliano

Saya menghadapi masalah yang sama ketika situs saya beralih dari http ke https. Kami telah menambahkan aturan untuk semua permintaan untuk mengalihkan http ke https.

Anda perlu menambahkan aturan redirection untuk permintaan antar situs, tetapi Anda harus menghapus aturan redirection untuk js/css eksternal.

2
tapas talukder

@ Blender Komentar adalah pendekatan terbaik. Jangan sekali-kali membuat kode protokol di mana pun dalam kode karena akan sulit untuk berubah jika Anda berpindah dari http ke https. Karena Anda perlu mengedit dan memperbarui semua file secara manual.

Ini selalu lebih baik karena secara otomatis mendeteksi protokol.

src="//code.jquery.com
2
Krishnadas PC

Saya menemukan jika Anda memiliki masalah dengan menyertakan atau menggabungkan halaman Anda dengan sesuatu seperti http: //www.example.com, Anda dapat memperbaikinya dengan meletakkan // www. Contoh .com sebagai gantinya

1
irene salomo