Ganti http dengan https php

Hampir setiap situs web WordPress harus dilayani melalui HTTPS, bukan HTTP, untuk alasan keamanan dan SEO. Konten HTTP tidak dienkripsi, membuat situs Anda rentan, dan Google mulai menggunakan HTTPS sebagai sinyal peringkat pada tahun 2014. Ini juga diperlukan untuk HTTP/2, yang menawarkan kecepatan lebih tinggi daripada HTTP. Dalam artikel ini, saya akan menunjukkan kepada Anda semua yang perlu Anda ketahui untuk mengubah situs dari HTTP ke HTTPS, termasuk menerapkan sertifikat SSL dan menangani peringatan konten campuran apa pun

Daftar isi

Alasan untuk Beralih dari HTTP ke HTTPS

Sebagian besar situs di web saat ini sudah HTTPS. Sekitar 95% situs menggunakan HTTPS, menurut Laporan Transparansi Google. Namun, masih ada kebutuhan untuk memindahkan situs dari HTTP ke HTTPS. Saya dapat memikirkan setidaknya tiga kasus penggunaan

  • Pindah dari lokal ke hidup. Anda mungkin menggunakan HTTP untuk membangun situs baru secara lokal, memerlukan pengalihan ke HTTPS saat situs tersebut aktif
  • Tidak ada SSL pada pementasan host. Jika penyedia hosting Anda menyediakan situs pementasan tetapi tidak memberikan sertifikat SSL, Anda harus mengonversi ke HTTPS saat memindahkan situs ke produksi
  • Situs langsung masih menggunakan HTTP. Ini adalah kejadian yang sangat langka akhir-akhir ini, tetapi kadang-kadang muncul. Kami akan memberikan proses untuk melakukannya di bawah ini, tetapi Anda juga harus memperbarui Google Analytics, Google Search Console, URL CDN Anda, dan tautan apa pun yang Anda kontrol, seperti media sosial

Mendapatkan sertifikat SSL hanyalah bagian dari pertempuran. Ada beberapa tweak lagi yang Anda perlukan agar situs WordPress Anda berjalan dengan baik melalui HTTPS setelah memasang sertifikat

  • Menguji situs melalui HTTPS untuk memastikan sertifikat terpasang dengan benar
  • Memperbarui URL dalam database
  • Memperbaiki peringatan konten campuran
  • Menambahkan pengalihan dari URL HTTP ke URL versi HTTPS

Mengapa Anda Membutuhkan Sertifikat SSL

Sertifikat SSL yang divalidasi dengan benar memastikan data yang ditransfer antara dua sistem dienkripsi. Beginilah prosesnya rusak

  1. Browser atau server mencoba untuk terhubung ke server web dan meminta agar server mengidentifikasi dirinya sendiri
  2. Server web mengirimkan salinan sertifikat SSL-nya
  3. Browser (atau server) menentukan apakah sertifikat telah ditandatangani oleh Otoritas Sertifikat yang diakui

Singkatnya, sertifikat SSL mengautentikasi identitas situs Anda, memungkinkan koneksi yang aman. Dimungkinkan untuk menandatangani sendiri sertifikat dalam beberapa kasus, seperti saat Anda memerlukan SSL untuk pengembangan lokal. Seringkali, Anda akan menggunakan SSL yang disediakan oleh host Anda

SSL adalah kependekan dari Secure Sockets Layer. Anehnya, apa yang kita sebut SSL saat ini sebenarnya adalah protokol yang dirubah. Keamanan Lapisan Transportasi (TLS). Teknologi yang mendasari dan namanya berubah, tetapi inisial SSL tetap ada

Memilih SSL yang Tepat

Sertifikat SSL dikategorikan dalam dua cara. tingkat validasi dan jenis domain yang akan mereka amankan

Tingkat Validasi

  • Validasi Domain. Ini adalah level terendah dan karenanya paling mudah didapat. Yang dikatakan hanyalah bahwa pemilik diverifikasi memiliki kendali atas domain. Waktu penyelesaiannya cenderung sangat cepat, dengan verifikasi email biasanya diberikan dalam beberapa jam. Kasus penggunaan paling umum untuk sertifikat seperti ini adalah bisnis kecil yang tidak bertukar informasi dengan pengguna

  • Validasi Organisasi. Ini adalah peningkatan dari validasi domain, karena CA akan memverifikasi kepemilikan domain dan detail organisasi, seperti nama dan lokasi. Seringkali diperlukan satu atau dua hari untuk verifikasi dilakukan dibandingkan dengan sertifikat yang divalidasi domain

  • Validasi Diperpanjang. Puncak mutlak validasi sertifikat. Selain memeriksa kepemilikan domain dan detail organisasi seperti di atas, CA juga akan memverifikasi lokasi fisik dan detail hukum entitas yang meminta. Singkatnya, CA melakukan semua yang mereka bisa untuk memverifikasi keberadaan Anda tanpa meminta beberapa orang datang untuk mengambil gambar dan memeriksa ID Anda

Domain Aman

  • Ranah Tunggal. Ini hanya berlaku untuk satu domain dan tidak akan berfungsi dengan yang lain, bahkan subdomain dari domain itu
  • Kartu pengganti. Ini akan berfungsi sebagai SSL untuk satu domain dan semua subdomainnya
  • Multi-Domain. SSL ini mencantumkan beberapa domain pada satu sertifikat, mencakup semuanya dan subdomainnya

Beralih ke HTTPS

Ada beberapa hal yang perlu Anda urus sebelum memulai. Pertama, Anda harus mempertimbangkan untuk membuat cadangan situs Anda terlebih dahulu. Jika ini adalah situs langsung, pastikan untuk membuat cadangan terlebih dahulu. Ada persyaratan lain yang harus Anda miliki juga

  • Sertifikat SSL
  • Periksa versi HTTPS dari skrip dan layanan eksternal
  • Pastikan host dan CDN mendukung HTTP/2

Yang terakhir secara teknis tidak diperlukan, tetapi Anda tidak akan mendapatkan manfaat kinerja HTTP/2 jika tidak didukung. Anda juga mungkin ingin mempertimbangkan plugin yang mendukung pemulihan berbagi, karena pembagian sosial dihitung pada postingan Anda dan halaman akan hilang saat Anda beralih dari HTTP ke HTTPS

Satu kata peringatan tentang lalu lintas. jika Anda mengalihkan situs langsung ke HTTPS, jangan heran jika lalu lintas dan peringkat pencarian Anda sedikit menurun saat Google merayapi ulang situs HTTPS baru

Memperoleh, Menerapkan, dan Memverifikasi Sertifikat SSL Anda

Banyak perusahaan hosting WordPress menawarkan sertifikat SSL sebagai bagian dari layanan mereka. Proses untuk meminta ini bervariasi dari host ke host (dan mungkin tidak disertakan dalam paket hosting Anda), tetapi biasanya cukup mudah. Misalnya, jika situs Anda dihosting oleh WP Engine, maka yang perlu Anda lakukan hanyalah masuk ke Portal Pengguna WP Engine, pilih instalasi WordPress yang ingin Anda sertifikasi, pilih SSL, dan klik Tambahkan Sertifikat. Anda kemudian dapat memilih dari opsi yang ada

Jika host web Anda tidak menawarkan sertifikat SSL, Anda juga dapat membelinya dari CA, seperti GoDaddy atau GlobalSign. Anda kemudian harus menginstal sertifikat secara manual. Proses yang tepat untuk ini sangat bervariasi tergantung pada konfigurasi server Anda, tetapi minimal Anda memerlukan akses SSH dan/atau panel kontrol ke server Anda, serta akses ke catatan DNS untuk domain Anda. Linode dan DigitalOcean memiliki panduan hebat yang membahas hal ini secara mendetail

Opsi lainnya adalah menyiapkan Let’s Encrypt SSL dan mendapatkan sertifikat gratis dengan cara itu

Apa pun metode yang Anda gunakan, proses menghasilkan Permintaan Penandatanganan Sertifikat (CSR) di server tempat ia akan dipasang dan meneruskan permintaan ke CA. CSR mencakup informasi terkait seperti nama domain, nama organisasi, dll. Itu juga berisi kunci publik yang akan dikaitkan dengan sertifikat. Proses tersebut juga akan membuat kunci privat, yang tidak termasuk dalam CSR. Catat kunci pribadi ini, karena Anda memerlukannya untuk memasang sertifikat

Jika Anda menggunakan proses manual, Anda harus mengunduh sertifikat SSL dan file bundel sertifikat dari CA Anda, dan mengunggahnya ke server Anda. Anda kemudian perlu mengedit file konfigurasi server Anda untuk mereferensikan SSL dan file bundel

Menentukan Versi HTTPS dari URL di wp-config. php

Setelah menginstal sertifikat SSL, Anda harus memperbarui situs untuk menggunakannya. Satu kebiasaan yang saya ambil dari bekerja dengan WordPress selama bertahun-tahun adalah saya selalu menentukan URL Situs baru di file wp-config.php saya sebelum menjalankan pembaruan apa pun pada database

Ini dapat membantu memecahkan masalah utama apa pun yang mungkin timbul dari perubahan URL. Misalnya, sertifikat SSL mungkin tidak diatur dengan benar, atau mungkin ada beberapa kode yang bergantung pada URL. Jika hal seperti itu terjadi, mudah dan cepat untuk menghapus baris dari file wp-config.php sambil memecahkan masalah lebih lanjut

Untuk melakukan ini, edit file wp-config.php Anda dengan menambahkan baris berikut di atas "Itu saja, berhenti mengedit. " komentar

define( 'WP_HOME', 'https://mdb.test' );
define( 'WP_SITEURL', 'https://mdb.test' );

Baris ini lebih diutamakan daripada nilai opsi

wp db export ../mdb_test_backup.sql
2 dan
wp db export ../mdb_test_backup.sql
3 di database Anda

Anda juga dapat menyesuaikannya melalui dasbor WordPress. Klik Pengaturan > Umum dan pastikan alamat WordPress dan alamat situs disetel ke versi HTTPS. Jika tidak, Anda dapat menyesuaikannya di sini

Ganti http dengan https php

Lihat beberapa halaman di situs Anda setelah Anda menambahkannya ke file wp-config.php Anda. Anda mungkin melihat beberapa peringatan konten campuran karena gambar atau file lain dimuat melalui HTTP, bukan HTTPS. Kami akan memperbaikinya selanjutnya

Memperbaiki Peringatan Konten Campuran Dengan Search and Replace

Peringatan konten campuran terjadi saat halaman mengirimkan konten HTTPS dan HTTP ke browser. Konten itu sendiri dapat terdiri dari JavaScript, CSS, gambar, atau sumber daya apa pun yang ditautkan. Peringatan ini berarti bahwa halaman tersebut hanya dienkripsi sebagian, dan oleh karena itu beberapa informasi dapat dibaca atau diubah oleh penyerang. Anda dapat memperbaikinya secara manual, tetapi biasanya Anda lebih baik menjalankan pencarian dan mengganti menggunakan WP Migrate, WP Migrate Pro, atau melalui baris perintah dengan WP-CLI

Proses manual mengharuskan Anda untuk mengunjungi setiap halaman yang memunculkan peringatan konten campuran. Setelah Anda berada di sana, mulai devtools browser Anda dan klik Konsol. Ini akan menunjukkan dengan tepat apa yang menyebabkan peringatan tersebut sehingga Anda dapat mengambil langkah untuk memperbaikinya. Salah satu penyebab paling umum adalah sumber daya tertaut, seperti gambar, yang diambil dari sumber non-HTTPS

Menjalankan Pencarian/Ganti Dengan WP Migrate

Sekarang setelah URL Situs utama dan URL Beranda dialihkan ke HTTPS, kami masih perlu memperbarui konten lainnya di database untuk menggunakan versi HTTPS dari URL

Kita dapat melakukannya dengan fitur WP Migrate Find and Replace. Buka WP Migrate di backend situs WordPress Anda, klik Migrate, lalu klik Find & Replace di bawah “Tools for This Site”

Ganti http dengan https php

Langkah selanjutnya adalah menyempurnakan pencarian dan penggantian kami. Saya telah menyetelnya untuk mencari semua tabel, dan mencentang opsi "Cadangkan semua tabel dengan awalan 'wp_'" – ini memastikan bahwa kita dapat memutar kembali jika perlu nanti

Di bawah "Opsi Lanjutan", saya membiarkan opsi "Ganti GUID" tidak dicentang. Ini penting jika situs web Anda sudah aktif karena memperbarui GUID dapat membuat postingan atau halaman apa pun muncul sebagai baru di pembaca feed. Namun, saya sarankan untuk mencentang kotak ini jika Anda mengaktifkan situs untuk pertama kalinya. Saya juga tidak mencentang opsi "Kecualikan transien" jika ada opsi sementara di database yang bergantung pada URL situs

Ganti http dengan https php

Di bawah "Temukan & Ganti Kustom", saya telah menambahkan versi HTTP dari URL Di kolom "Temukan", dengan versi HTTPS di kolom "Ganti". Langkah terakhir klik Preview Changes. Ini akan memulai proses, menampilkan perubahan dan meminta Anda untuk menyimpan atau membatalkan masing-masing. Mengklik panah di sebelah tombol "Pratinjau Perubahan" memungkinkan Anda untuk mengalihkan fungsi tombol ke "Temukan & Ganti". Ini akan menjalankan seluruh proses tanpa diminta

Ganti http dengan https php

Menjalankan Pencarian/Ganti Dengan WP-CLI

Anda juga dapat menjalankan pencarian dan mengganti baris perintah menggunakan WP-CLI

Setelah meluncurkan WP-CLI, hal pertama yang harus Anda lakukan adalah mem-backup database Anda. Anda ingin dapat mengembalikan perubahan apa pun jika terjadi kesalahan

Perintah WP-CLI selalu mengikuti format tertentu, dengan perintah induk dan subperintah, diikuti oleh parameter dan sakelar

Perintah untuk melakukan perubahan pada database adalah

wp db export ../mdb_test_backup.sql
5. Kami akan menambahkan subperintah
wp db export ../mdb_test_backup.sql
_6 untuk mencadangkan database. Satu-satunya parameter yang perlu kita tambahkan adalah jalur file. Mari kita simpan satu folder dari direktori WordPress kita untuk membuatnya sedikit lebih sulit ditemukan oleh penyerang

wp db export ../mdb_test_backup.sql
_

Langkah selanjutnya adalah menjalankan pencarian dan penggantian, menggunakan

wp db export ../mdb_test_backup.sql
7. Agar ini berfungsi, kita perlu menambahkan opsi
wp db export ../mdb_test_backup.sql
_8 dan
wp db export ../mdb_test_backup.sql
9 ke perintah ini. Ini memberi tahu WP-CLI apa yang harus dicari dan apa yang harus diganti ketika menemukannya. Ganti
wp db export ../mdb_test_backup.sql
_8 (alamat HTTP) dan
wp db export ../mdb_test_backup.sql
9 (versi HTTPS) dengan nilai yang benar pada contoh di bawah, dengan tetap mempertahankan tanda kutip tunggal

wp search-replace 'old' 'new'

Perintah

wp db export ../mdb_test_backup.sql
7 mencantumkan banyak opsi lain selain
wp search-replace 'old' 'new'
3 dan
wp search-replace 'old' 'new'
4, tetapi kita akan melihat hanya tiga lagi untuk saat ini

Yang pertama adalah

wp search-replace 'old' 'new'
_5, yang memberi tahu WP-CLI untuk menjalankan proses dan memberi Anda laporan, tetapi tidak benar-benar melakukan perubahan. Ini sangat berguna untuk memeriksa untuk memastikan proses akan bekerja sebagaimana dimaksud

Yang kedua adalah

wp search-replace 'old' 'new'
_6. Ini memastikan WP-CLI hanya menampilkan perubahan, bukan setiap entri di situs WordPress kami

Terakhir, kami akan memasukkan

wp search-replace 'old' 'new'
_7. Ini memastikan GUIDes yang ada di situs WordPress Anda dibiarkan sendiri. Anda harus menghilangkan opsi ini jika Anda menjalankan situs untuk pertama kalinya

Inilah yang kami dapatkan ketika kami menggabungkan semuanya

wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.

Memperbarui Skrip, Pustaka, dan CDN Anda

Anda mungkin memiliki skrip dan pustaka khusus di header atau footer yang perlu diperbarui. Dalam kebanyakan kasus, Anda dapat memperbaikinya dengan memperbarui skrip agar mengarah ke versi HTTPS

Jika Anda menggunakan Jaringan Pengiriman Konten (CDN), Anda mungkin perlu memperbaruinya juga. Metode aktual yang Anda gunakan akan bergantung pada CDN, tetapi sebagian besar layanan populer menyediakan panduan

  • Microsoft Azure
  • Amazon CloudFront
  • CDN Google Cloud

Mengalihkan dari HTTP ke HTTPS

Ada berbagai cara untuk melakukannya tergantung pada apakah Anda menggunakan Nginx atau Apache di tumpukan Anda. Apa pun itu, Anda harus memasukkan SSH atau SFTP ke server Anda untuk melakukan perubahan apa pun. Selain itu, Anda dapat menggunakan plugin atau arahan Kebijakan Keamanan Konten

wp search-replace 'old' 'new'
8. Saya tidak akan merekomendasikan salah satu dari itu untuk sebagian besar situs, tetapi mereka dapat membantu menutupi celah untuk situs dengan sejumlah besar URL lawas, atau hingga solusi yang lebih permanen diterapkan

Sebuah kata peringatan. Tak satu pun dari teknik ini secara ajaib akan menyebabkan sumber daya HTTPS muncul di tempat yang sebelumnya tidak ada. Yang dilakukan pengalihan hanyalah memastikan pengguna yang mencoba mengakses konten HTTP dialihkan ke konten HTTPS. Jika tidak ada konten HTTPS, pengguna tidak akan dilayani apa pun

Mengarahkan Ulang Dengan Nginx

Jika tumpukan server Anda menggunakan Nginx, Anda dapat mengalihkan dari HTTP ke HTTPS dengan menambahkan beberapa baris ke file

wp search-replace 'old' 'new'
9 Anda. Lokasi tepatnya mungkin berbeda tergantung pada apakah Anda menggunakan Nginx Plus atau Open Source, serta sistem paket yang digunakan untuk menginstal Nginx. Biasanya, itu terletak di
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
_0,
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
1, atau
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
2

Anda dapat menyalin dan menempelkan baris di bawah ini ke file konfigurasi Nginx Anda. Ingatlah untuk menukar semua instance

wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
3 dengan nama server Anda

server {
    listen 80;
    server_name mdb.test www.mdb.test;
    return 301 https://mdb.test$request_uri;
}

Mengarahkan Ulang Dengan Apache

Panel kontrol seperti cPanel dan Plesk memungkinkan Anda mengubah pengaturan yang digunakan Apache dan mengalihkan HTTP ke HTTPS. Anda juga dapat melakukannya dengan menambahkan beberapa baris ke file Apache

wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
4 Anda

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

Pastikan untuk menambahkan baris baru di luar modifikasi WordPress yang sudah ada di file

wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
4 Anda. Bagian ini ditandai dengan
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
_6 dan
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
7. Setelah selesai, Anda harus memiliki sesuatu seperti ini

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

# BEGIN WordPress

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Mengarahkan Ulang Dengan Plugin

Anda juga dapat menggunakan plugin untuk memaksa HTTPS di situs WordPress Anda. Ada banyak opsi, di mana plugin SSL Benar-benar Sederhana tampaknya menjadi yang paling populer

Praktik terbaiknya adalah memperbarui URL di database Anda, daripada mengandalkan plugin. Namun, plugin bisa sangat membantu sebelum Anda meluangkan waktu untuk melakukan perubahan permanen

Mengarahkan Ulang Dengan Kebijakan Keamanan Konten

Menetapkan Kebijakan Keamanan Konten (CSP) adalah cara yang berguna untuk mengelola konten campuran dalam skala besar, membuatnya sangat berguna untuk situs besar dengan banyak URL HTTP lawas. Untuk mengaktifkan fitur CSP, Anda harus menyertakan header

wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
8 dalam respons yang dikirim dari server Anda. Jika Anda tidak dapat mengakses tajuk, Anda juga dapat menyetelnya menggunakan tag
wp search-replace ‘http://mdb.test’ ‘https://mdb.test’ --dry-run --report-changed-only --skip-columns=guid
+------------------+-----------------------+--------------+------+
| Table            | Column                | Replacements | Type |
+------------------+-----------------------+--------------+------+
| wp_postmeta      | meta_value            | 3            | PHP  |
| wp_posts         | post_content          | 5            | SQL  |
+------------------+-----------------------+--------------+------+
Success: 8 replacements to be made.
9 di bagian
server {
    listen 80;
    server_name mdb.test www.mdb.test;
    return 301 https://mdb.test$request_uri;
}
0 halaman

Jika Anda memiliki akses tajuk, itu hanya masalah mengirimkan arahan ini

Content-Security-Policy: upgrade-insecure-requests

Ini berfungsi dengan memaksa browser apa pun yang mengunjungi situs Anda untuk membuat permintaan aman alih-alih mengakses sumber daya yang menggunakan HTTP. Ini mencegah pengguna untuk melihat konten yang tidak aman

Seperti disebutkan di atas, Anda juga dapat menggunakan tag ________18______9 di halaman

server {
    listen 80;
    server_name mdb.test www.mdb.test;
    return 301 https://mdb.test$request_uri;
}
0

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

Langkah selanjutnya

Dengan pencarian dan penggantian selesai dan semua URL dalam database diperbarui, Anda dapat menghapus pembaruan yang Anda buat pada file wp-config.php Anda dan memeriksa beberapa halaman di ujung depan situs Anda untuk memastikan bahwa semuanya berfungsi seperti yang diharapkan

Jika situs web tidak ditandai sebagai aman (biasanya dengan ikon gembok hijau di Chrome atau Firefox) oleh browser Anda, periksa apakah Anda masih memiliki peringatan konten campuran. Ini terjadi ketika halaman adalah HTTPS tetapi ada beberapa aset yang dimuat melalui HTTP

Anda biasanya dapat menemukan peringatan semacam ini dengan menuju ke konsol javascript browser Anda dan mencari kesalahan apa pun tentang konten yang dimuat melalui HTTP

Ganti http dengan https php

Jika Anda mengalami kesalahan ini, penyebab paling umum adalah file tema atau plugin – terkadang tautan ke aset tema atau plugin dapat di-hardcode dan perlu diperbaiki

Membungkus

Apakah Anda menjalankan situs untuk pertama kalinya atau mengalihkan situs yang ada ke HTTPS, alat yang tersedia semakin mempermudah penerapan sertifikat keamanan dan menjaga peringatan konten campuran Anda

Apa alat favorit Anda untuk ini?

Catatan ini telah diposting di WP Migrasi DB Pro, Alur Kerja dan menandai WP Migrasi DB Pro, Temukan & Ganti, WP-CLI, SSL, HTTPS, Ayo Enkripsi, Otoritas Sertifikat, WP Migrasi, peringatan konten campuran

tentang Penulis

Matt Shaw Pengembang WordPress Senior

Matt adalah pengembang plugin WordPress yang berlokasi di dekat Philadelphia, PA. Dia suka membuat alat baru yang luar biasa dengan PHP, JavaScript, dan apa pun yang kebetulan dia dapatkan

@mattgrshaw

  • kata Justin .

    Bagi saya, saya baru saja memanfaatkan WPX Hosting yang memberikan SSL gratis untuk situs Anda dan mengonversinya, lalu menggunakan plugin SSL WordPress yang sangat sederhana untuk menangani semua pengalihan. Cukup mudah dan membutuhkan waktu 30 menit dan mengalihkan semua 6 blog WordPress saya ke HTTPS. Saya bahkan memperbarui dan menjalankan gambar Amazon Cloudfront saya melalui HTTPS juga sehingga tidak ada campuran HTTP dan HTTPS di URL yang sedang dimuat

  • kata David .

    Artikel yang bagus Matt, saya mendapat kesan membaca sendiri karena inilah metode yang saya gunakan saat ini. Satu-satunya hal yang tidak dicakup oleh metode ini adalah referensi kode di dalam kode php. Tajuk. php dan footer. php per contoh mungkin menyertakan referensi ke sumber daya http. Itu dapat ditangani oleh plugin lain atau diubah dalam kode

  • kata Bryan .

    Ini pada dasarnya adalah metode saya juga walaupun saya lebih suka menggunakan plugin Better Search and Replace Anda. Opsi uji coba dan kemampuan untuk melihat tabel mana yang akan diubah terkadang membantu dalam melacak masalah konten campuran yang misterius

    • Omnia Creative Studio mengatakan.

      Kami menggunakan ini terutama saat melakukan Cari dan Ganti dan kemudian menindaklanjuti dengan plugin SSL Insecure Content Fixer oleh WebAware untuk memastikan semuanya disajikan melalui SSL dan tidak pernah mengalami masalah 🙂

  • ujar Matt Ryan .

    Hai Matt – Matt lain di sini, Artikel yang bagus. Saya suka langkah menambahkan definisi ke wp-config sebelum masuk ke halaman pengaturan WordPress. Proses yang jauh lebih bersih. Mengubah daftar periksa saya untuk menyertakannya

  • kata Brad .

    Saya memulai dengan situs WP http biasa. Kemudian saya akan menjalankan certbot untuk meminta sertifikat Let's Encrypt SSL yang baru. certbot pasti –webroot -w /u1/var/www/domain -d domain. com -d http. // www. domain. com –rsa-key-size 4096 –hsts –uir –staple-ocsp –no-redirect Saya menggunakan nginx, jadi di file situs nginx, saya akan menambahkan redirector seperti ini. jika ($host. = 'domain. com’) { kembalikan 301 https. //domain. com$permintaan_uri; . Muat ulang nginx. Di database WP, saya akan menjalankan dua kueri pembaruan. mysql> perbarui wp_options atur option_value = 'https. //domain. com' di mana option_name = 'rumah'; . //domain. com' di mana option_name = 'siteurl';

  • kata Jesse .

    Berbagi besar. Kami selalu menggunakan Better Search Replace untuk memindai dan memperbaiki semua variasi. 1. http. // otak yang enak. com >> ganti >> https. // otak yang enak. com 2. http. // www. otak lezat. com >> ganti >> https. // otak yang enak. com 3. https. // www. otak lezat. com >> ganti >> https. // otak yang enak. com Selanjutnya, kami menggunakan Force HTTPS (plugin kami). https. //wordpress. org/plugins/force-https-littlebizzy/ Terakhir, tab "Crypto" CloudFlare memiliki dua opsi yang cukup membantu. 1. Selalu gunakan HTTPS 2. Penulisan Ulang HTTPS Otomatis Kami juga "mengunci" penulisan ulang ini menggunakan Aturan Halaman CloudFlare. 1. http. // otak yang enak. com/* >> 301 >> https. // otak yang enak. com/$1 2. http. // www. otak lezat. com/* >> 301 >> https. // otak yang enak. com/$1 3. https. // www. otak lezat. com/* >> 301 >> https. // otak yang enak. com/$1 Pokoknya harap ini membantu seseorang. Bersulang

  • kata helgatheviking .

    Terima kasih telah berbagi informasi yang bermanfaat. Saya sangat terkesan melihat Anda telah memberikan informasi yang begitu menarik tentang WordPress. Saya berjuang dengan masalah yang sama sejak 3 hari terakhir dan akhirnya menyelesaikannya. Ngomong-ngomong, bisakah Anda menyarankan saya beberapa opsi yang lebih baik untuk mendapatkan hosting linux murah selain redserverhost?

    Bagaimana cara mengganti http dengan https di PHP?

    $hitung = 1; . //", "https. //", $url, $count); Catatan. Melewati 1 secara langsung akan menimbulkan kesalahan fatal (Fatal error. Hanya variabel yang dapat diteruskan dengan referensi) jadi Anda harus meneruskannya dengan parameter terakhir dengan referensi. Itu menimbulkan kesalahan karena $count hanya akan berisi jumlah penggantian yang dilakukan.

    Bagaimana cara mengganti https dengan http?

    Cara Mengubah Situs Anda dari HTTPS ke HTTP di Hosting Non-WP .
    Masuk ke ACC
    Klik Domain di sidebar kiri
    Klik Kelola Nama Domain Anda di drop-down
    Klik nama domain yang ingin Anda ubah menjadi HTTP
    Temukan tombol Ubah Opsi Tampilan Situs Non-SSL dan klik