Terlalu Banyak Pengalihan: Apa Arti Kesalahan Ini Dan Bagaimana Cara Memperbaikinya
Diterbitkan: 2022-09-27"Terlalu banyak pengalihan," juga dikenal sebagai loop pengalihan, adalah kesalahan yang akan dikembalikan browser jika halaman web yang diminta gagal dimuat karena jumlah pengalihan yang tidak terbatas yang harus diikuti untuk mengambil konten apa pun dari server. Pengulangan pengalihan sering kali dapat disebabkan oleh pengalihan yang bertentangan di sisi server atau kesalahan konfigurasi CDN.
Dalam panduan komprehensif untuk memperbaiki kesalahan “Terlalu banyak pengalihan” ini, Anda akan mempelajari di mana pengalihan dapat dikonfigurasi, apa alasan paling umum di balik pengulangan pengalihan dan bagaimana mengatasinya dengan langkah demi langkah.
Apa itu Redirect dan Bagaimana Cara Kerjanya?
Pengalihan situs web dapat didefinisikan sebagai langkah-langkah yang perlu diambil selama pengiriman konten untuk menemukan lokasi halaman web yang diminta. Sementara, bagi Anda, mungkin tampak seperti perubahan yang dicapai dengan aturan pengalihan hanya mencerminkan bagaimana alamat situs web ditampilkan di bilah alamat, browser Anda melakukan serangkaian operasi di belakang layar untuk menentukan ke mana setiap pengalihan mengarah sebelum dapat memuat apa pun. konten dari lokasi akhir yang ditentukan oleh jalur pengalihan.
Memaksa HTTPS, versi www dari situs web, atau memuat nama domain lain — pengalihan banyak digunakan di hosting situs web, memungkinkan Anda menyesuaikan pengiriman konten. Ada beberapa cara untuk menyiapkan pengalihan domain, dan selama mereka dikonfigurasi dengan benar, browser tidak akan mengalami masalah apa pun dalam mengikuti aturan yang telah Anda buat.
Pengalihan Sementara dan Permanen
Ada dua jenis pengalihan utama yang dapat dikonfigurasi — sementara dan permanen. Bergantung pada jenis pengalihan yang ditemui, server web akan mengembalikan kode status HTTP 302 atau 301.
Kode respons HTTP 302 menunjukkan kepada Anda bahwa alamat web tertentu dialihkan sementara ke lokasi lain. Namun, terkadang Anda dapat melihat bahwa pengalihan sementara diikuti saat Anda telah menghapus aturan pengalihan permanen dari situs web Anda, tetapi belum menghapus cache-nya, yang mencegah perubahan agar tidak terlihat.
Ini dapat terjadi jika Anda menggunakan solusi caching dalam bentuk apa pun, termasuk salah satu plugin caching WordPress. Peramban Anda juga akan menyimpan versi cache dari situs web apa pun yang Anda kunjungi, yang akan menyertakan pengalihan lama.
Pengalihan permanen mengembalikan kode status HTTP 301 dan menunjukkan bahwa situs web Anda atau halaman tertentu di dalamnya telah dipindahkan secara permanen, yang, jika itu adalah pengalihan ke HTTPS atau versi www dari situs web, tidak berarti bahwa lokasinya di sistem file telah berubah.
Apa Pengalihan Paling Umum?
Pengalihan dari protokol web HTTP ke HTTPS dan dari versi situs web non-www ke www adalah dua aturan paling umum yang dikonfigurasi. Pengalihan ke HTTPS memastikan semua lalu lintas web dienkripsi dengan menggunakan sertifikat SSL, sementara pengalihan ke www sering digunakan untuk mengintegrasikan jaringan pengiriman konten dengan situs web Anda menggunakan data CNAME.
HTTP ke HTTPS
Pengalihan dari HTTP ke HTTPS, sering disebut sebagai memaksa HTTPS, dapat dikonfigurasi untuk memastikan tidak ada konten yang dikirimkan ke pengunjung situs web melalui koneksi HTTP yang tidak aman. Jika sertifikat SSL/TLS yang valid dipasang di situs web Anda, Anda biasanya tidak perlu memaksakan HTTPS secara manual, tetapi menambahkan pengalihan semacam itu dapat menjadi salah satu cara untuk menangani konten campuran.
Konten Campuran
Konten campuran di situs web dapat didefinisikan sebagai situasi ketika file HTML dasar dimuat melalui HTTPS, tetapi sumber daya lain yang dirujuk, termasuk gambar, file Javascript atau CSS, dikirimkan ke pengunjung melalui HTTP. Bahkan jika Anda telah menginstal sertifikat SSL yang valid, browser akan tetap menampilkan peringatan keamanan jika konten campuran diidentifikasi pada halaman web.
Menyiapkan pengalihan untuk mengatasi masalah dengan konten campuran umumnya bukan solusi terbaik. Sebagai gantinya, Anda harus mendapatkan semua URL (Uniform Resource Locators) di database situs web Anda diperbarui untuk menyertakan protokol HTTPS, bukan HTTP. Itu dapat dilakukan secara manual dengan menggunakan fitur pencarian-ganti yang ditawarkan WP CLI atau plugin WordPress. Untuk sistem manajemen konten lainnya, Anda perlu memodifikasi alamat dengan menggunakan alat administrasi database seperti phpMyAdmin atau menjalankan kueri MySQL/MariaDB dari baris perintah.
3 Lokasi Utama Dimana Pengalihan Dapat Dikonfigurasi
Pengalihan umumnya dapat dikonfigurasi di salah satu dari tiga lokasi utama:
- Konfigurasi server web . File konfigurasi global yang digunakan oleh server web berisi pengaturan yang biasanya diterapkan ke semua situs web yang dihosting, jadi tidak disarankan menambahkan pengalihan ke salah satunya. Menggunakan file konfigurasi lokal yang dibuat untuk setiap situs web satu per satu adalah standar untuk menyiapkan pengalihan di sisi server.
- Konfigurasi sistem manajemen konten . Sistem manajemen konten Anda menyimpan alamat situs web Anda di database sebagai konstanta, yang dapat digunakan untuk memaksa HTTPS atau memuat versi www-nya.
- Konfigurasi jaringan pengiriman konten . CDN Anda akan memaksa pengalihannya sendiri yang akan menentukan bagaimana tepatnya konten diambil dari server asal dan dikirimkan ke pengunjung situs web.
Pengalihan di File Konfigurasi Server Web
Anda dapat mengatur aturan pengalihan secara lokal di salah satu file konfigurasi yang akan dibaca oleh server web Anda. Ketika Apache digunakan sebagai server web, aturan pengalihan biasanya diatur dalam file .htaccess lokal situs web. Jika NGINX digunakan, pengalihan dikonfigurasi dalam blok server NGINX, yang mewakili konfigurasi global situs web Anda.
Di bawah ini Anda dapat melihat dua pengalihan yang dapat ditambahkan ke .htaccess — satu memaksa HTTPS, dan yang lainnya mengirim semua permintaan web ke versi www situs web. Aturan sintaks yang ketat harus diikuti, atau Anda berisiko menurunkan situs web Anda jika Apache mendeteksi kesalahan sintaks di salah satu file konfigurasi lokal.
Jika Anda menggunakan plugin redirect untuk WordPress, mereka kemungkinan besar akan menulis redirect mereka ke file .htaccess lokal Anda juga.
Pengalihan Dalam Konfigurasi WordPress
WordPress dan sistem manajemen konten lainnya menempatkan alamat situs web di database, dan pengaturan dimuat setiap kali konten apa pun diminta. Alamat mewakili URL yang terdiri dari nama domain dan protokol web, baik HTTP atau HTTPS. Dengan mengubah URL di database, Anda dapat mengarahkan ulang situs web Anda ke www atau memaksa HTTPS jika ada sertifikat SSL/TLS yang terpasang.
WordPress menggunakan konstanta WP_HOME untuk mengidentifikasi pengaturan Alamat WordPress dan WP_SITEURL sebagai Alamat Situs, yang disimpan di tabel wp_options sebagai siteurl dan home. Pengaturan Alamat WordPress mengacu pada lokasi instalasi WordPress, sedangkan Alamat Situs mewakili URL yang perlu Anda ketik di bilah alamat browser untuk membuka situs web Anda.
Pengalihan Dipaksa Oleh CDN
Konfigurasi jaringan pengiriman konten Anda menentukan cara mengambil halaman web yang diminta dari server asal dan mengirimkannya ke pengunjung situs Anda — melalui HTTP atau HTTPS. Prosedur yang tepat ditentukan oleh mode enkripsi yang dipilih. Ada tiga jenis enkripsi utama yang ditawarkan oleh jaringan pengiriman konten modern:
- Enkripsi penuh, atau ujung ke ujung . Enkripsi ujung ke ujung memastikan HTTPS digunakan di semua tahap pengiriman konten. Ini berarti bahwa semua permintaan web dari browser ke CDN, dan dari CDN ke server asal, selalu dikirim melalui HTTPS. Enkripsi ujung ke ujung memerlukan dua sertifikat SSL — satu diinstal di server asal, dan yang lainnya diimplementasikan oleh CDN.
- Fleksibel, atau enkripsi parsial . Enkripsi parsial memaksa semua koneksi dari browser, CDN untuk melewati HTTPS, sedangkan CDN akan terhubung ke server asal melalui HTTP. Namun, situs web Anda akan tetap ditampilkan sebagai aman di semua browser.
- Tidak ada enkripsi . Dengan enkripsi dinonaktifkan, pengiriman konten akan dilakukan melalui HTTP, dan semua browser akan menampilkan peringatan keamanan yang memuat situs web Anda.
Jika CDN mencoba memulai koneksi melalui HTTPS, tetapi server web Anda mengalihkan permintaan HTTPS ke HTTP, loop pengalihan akan dibuat, yang mengakibatkan terlalu banyak kesalahan pengalihan di situs web Anda.
Apa Arti Kesalahan "Terlalu Banyak Pengalihan"?
"Terlalu banyak pengalihan", sering disebut sebagai loop pengalihan, adalah pesan kesalahan yang menunjukkan konflik yang terjadi selama pengiriman konten yang disebabkan oleh dua pengalihan yang bersaing. Saat loop pengalihan diidentifikasi, browser modern akan mengembalikan salah satu variasi kesalahan berikut:
- Halaman tidak dialihkan dengan benar . Anda dapat melihat pesan kesalahan ini di Firefox.
- Halaman tidak berfungsi. ERR_TOO_MANY_REDIRECTS . Google Chrome akan menampilkan kesalahan ini setelah terjebak dalam loop redirect.
- Safari tidak dapat membuka halaman karena terlalu banyak pengalihan terjadi . Dengan cara ini, Safari akan memberi tahu Anda konflik pengalihan apa yang perlu diatasi sebelum situs web dapat dimuat.
Untuk memperbaiki kesalahan pengalihan terlalu banyak, Anda perlu meninjau pengalihan yang dikonfigurasi di .htaccess dan dipaksa oleh sistem manajemen konten, dan memeriksa mode enkripsi apa yang digunakan oleh jaringan pengiriman konten jika Anda memilikinya.
3 Kesalahan Konfigurasi Paling Umum Yang Menyebabkan Loop Pengalihan Di Situs Web Anda Dan Cara Mengatasinya
Melakukan semua pengalihan untuk mengidentifikasi konflik bukanlah tugas yang mudah, terutama jika beberapa ditambahkan ke konfigurasi global server web, yang membuatnya diterapkan di seluruh server. Namun, ada beberapa kesalahan konfigurasi yang sangat sering terlihat yang pasti mengarah pada pengulangan loop.
Tiga alasan paling umum di balik melihat "Terlalu banyak pengalihan" di situs web Anda adalah:
- Sertifikat SSL/TLS yang valid tidak ada . Redirect loop dapat terjadi jika sertifikat SSL Anda telah kedaluwarsa atau ada masalah lain dengannya, tetapi situs web Anda masih mencoba memaksakan HTTPS.
- Pengaturan alamat situs web CMS salah . Jika protokol yang ditentukan dalam pengaturan alamat situs web yang digunakan oleh WordPress atau sistem manajemen konten lain bertentangan dengan pengalihan lain yang dikonfigurasi, itu akan menyebabkan kesalahan pengalihan terlalu banyak.
- Mode enkripsi CDN yang salah dipilih . Sangat umum untuk melihat redirect loop ketika beralih ke enkripsi penuh dalam konfigurasi CDN. Jika persyaratan untuk menggunakan enkripsi ujung-ke-ujung tidak dipenuhi oleh server asal, ini dapat mengakibatkan masalah.
Sertifikat SSL/TLS yang Valid Tidak Ada
Sertifikat SSL/TLS bertanda CA yang valid yang dipasang di situs web memastikan semua lalu lintas web dienkripsi saat dikirimkan dari server ke browser. Selain itu, HTTPS kemungkinan dipaksakan pada tingkat server, yang berfungsi sempurna hingga sertifikat SSL Anda kedaluwarsa dan tidak diperbarui secara otomatis. Itu bisa terjadi karena alasan berikut:
- Perpanjangan sertifikat SSL/TLS otomatis tidak diaktifkan . Jika SSL belum diperbarui secara otomatis, Anda harus memesan sertifikat baru dan menginstalnya.
- Validasi domain SSL gagal . Let's encrypt atau Sectigo, salah satu penyedia SSL yang paling banyak digunakan yang menawarkan sertifikat gratis, menerapkan tantangan berbeda untuk memvalidasi bahwa Anda mengontrol nama domain yang perlu diterbitkan sertifikat baru. Jika validasi domain gagal, sertifikat baru tidak akan diinstal hingga Anda mengatasi masalah yang memblokir permintaan validasi.
- Akar atau salah satu sertifikat perantara telah kedaluwarsa . Ketika itu terjadi, Anda perlu menginstal ulang sertifikat Anda setelah penyedia SSL mengatasi masalah di pihak mereka.
Cara Mengatasi
Periksa apakah situs web Anda memiliki sertifikat yang valid yang diinstal dengan menggunakan salah satu pemeriksa SSL. Jika telah kedaluwarsa atau pemeriksa SSL menunjukkan masalah lain, instal ulang sertifikat. Jika Let's Encrypt atau Sectigo gagal mengeluarkan sertifikat gratis, Anda perlu memeriksa apa yang mungkin memblokir permintaan validasi.
Salah satu alasan validasi domain SSL gagal adalah memiliki jaringan pengiriman konten yang terintegrasi, terutama jika terakhir kali Let's Encrypt atau Sectigo mengeluarkan sertifikat, Anda belum mengonfigurasinya. Jika Anda perlu memasang sertifikat SSL gratis yang baru, jeda CDN, sehingga situs web Anda mengarah ke server secara langsung, mengembalikan alamat IP utamanya, bukan alamat IP yang dimiliki jaringan pengiriman konten. Dengan cara ini, Anda dapat memperbarui sertifikat di server asal untuk terus menggunakan enkripsi ujung ke ujung.
Pengaturan Alamat Situs Web CMS Salah
WordPress dan semua sistem manajemen konten lainnya dapat memaksa pengalihan ke HTTPS atau www dengan menyimpan alamat situs web Anda di database dan memuatnya setiap kali ada konten yang diminta. Jika pengaturan alamat situs tidak diatur dengan benar — menggunakan protokol atau nama domain yang salah — itu akan menyebabkan masalah, termasuk melihat terlalu banyak kesalahan pengalihan.
Cara Mengatasi
Jika Anda telah menginstal sertifikat SSL, terutama jika enkripsi ujung-ke-ujung dipastikan oleh konfigurasi CDN, gunakan HTTPS di pengaturan Alamat WordPress dan Alamat Situs. Jika situs web Anda dialihkan ke versi www, kontestan WP_SITEURL dan WP_HOME harus mencerminkannya.
Buka menu Pengaturan Umum di dasbor WordPress Anda dan perbaiki nilai yang ditetapkan untuk Alamat WordPress dan Alamat Situs yang diperlukan. Klik Save Changes agar WordPress mengubah pengaturan di database.
Mode Enkripsi CDN Salah Dipilih
Tidak boleh ada konflik antara pengalihan yang dikonfigurasi di server asal dan mode enkripsi yang digunakan oleh CDN, atau Anda akan melihat kesalahan "Terlalu banyak pengalihan" mencoba memuat situs web Anda di browser apa pun. Pastikan Anda memilih mode enkripsi yang benar yang lebih sesuai dengan kebutuhan situs web Anda.
Karena jaringan pengiriman konten selalu mengenkripsi lalu lintas antara servernya dan browser, kecuali jika Anda menonaktifkan enkripsi sepenuhnya, Anda dapat memilih untuk tidak menginstal SSL di server asal. Pilih enkripsi parsial dan pastikan Anda tidak memaksa HTTPS di tingkat server untuk menghindari masalah menerima permintaan dari CDN melalui HTTP.
Jika enkripsi ujung-ke-ujung dipilih, sertifikat SSL yang valid harus dipasang di server asal, sehingga CDN dapat terhubung melalui HTTPS. Kecuali Anda dapat menginstal sertifikat baru secara manual, setiap kali SSL perlu diperbarui, jeda sementara CDN Anda untuk menghindari masalah dengan validasi domain.
Cara Mengatasi
Tinjau pengaturan Anda saat ini dan putuskan mode enkripsi apa yang perlu dipilih. Beralih ke jenis enkripsi lain untuk memperbaiki kesalahan "Terlalu banyak pengalihan" di situs web Anda yang disebabkan oleh pengalihan yang bertentangan di server asal Anda atau tidak adanya SSL di dalamnya yang diperlukan untuk mendukung enkripsi ujung ke ujung.
Cara Memperbaiki "Terlalu Banyak Pengalihan" Dalam 3 Langkah
Pada langkah-langkah di bawah ini, Anda akan mempelajari cara mengidentifikasi pengalihan yang bertentangan dan dengan cepat memperbaiki loop pengalihan di situs web Anda.
Langkah 1. Periksa Jalur Pengalihan Situs Web Anda
Banyak sumber menyarankan untuk membersihkan cache browser Anda sebagai langkah pertama untuk memecahkan masalah redirect loop. Namun, seperti halnya kesalahan lainnya, ini hanya akan berfungsi jika masalah telah diatasi di server, tetapi browser masih menyimpan versi situs web Anda yang rusak di cache-nya. Biasanya, setelah membuat perubahan apa pun pada situs web Anda, Anda mungkin ingin membersihkan cache-nya untuk melihatnya tercermin.
Langkah pertama untuk memperbaiki "Terlalu banyak pengalihan" adalah mengikuti jalur pengalihan situs web Anda untuk melihat di mana tepatnya browser macet. Cara terbaik untuk melakukannya adalah dengan menggunakan salah satu pemeriksa pengalihan.
Semua atau sebagian besar pemeriksa pengalihan menggunakan cURL, alat baris perintah yang hebat untuk mentransfer data menggunakan berbagai protokol jaringan. Kami dapat menggunakannya untuk mendapatkan informasi header HTTP, yang akan menunjukkan kepada Anda apa yang sebenarnya terjadi setelah Anda mencoba memuat situs web Anda.
Simpan skrip Bash sederhana berikut ke file bernama redirects.sh setelah Anda terhubung ke server melalui SSH. Jadikan itu dapat dieksekusi dengan menjalankan chmod +x redirects.sh.
Jalankan skrip dengan meneruskannya ke nama domain situs web Anda. Misalnya, ./redirects.sh wordpress.com.
Langkah 2. Identifikasi Pengalihan yang Bertentangan
Periksa output yang Anda dapatkan saat menjalankan skrip di atas. Ini akan memberi tahu Anda jenis pengalihan apa yang menyebabkan "Terlalu banyak pengalihan" muncul saat browser menyerah untuk mengikuti aturan yang bertentangan. Pada output di bawah ini, kita dapat melihat bahwa ada redirect tak terbatas dari HTTP dan HTTPS.
Perhatikan kode status pengembalian dari setiap pengalihan. Pengalihan permanen sering kali berasal dari file .htaccess situs web, sedangkan pengalihan sementara biasanya dibuat dalam kode situs web, sehingga dikendalikan oleh WordPress atau sistem manajemen konten lain yang Anda gunakan.
Langkah 3. Mengatasi Redirect Loop
Bergantung pada aturan pengalihan yang bertentangan yang telah Anda identifikasi, Anda akan tahu di mana harus mengulangnya. Seperti yang telah kita bahas, ada tiga hal utama yang harus diperiksa — file .htaccess lokal Anda, pengaturan alamat situs web yang disimpan di database situs web Anda oleh CMS, dan mode enkripsi yang dipilih dalam konfigurasi CDN.
Jika loop pengalihan terjadi saat situs web Anda mencoba mengalihkan antara HTTP dan HTTPS, periksa apakah Anda memiliki sertifikat SSL/TLS yang valid yang diinstal dan mode enkripsi apa yang dipilih dalam konfigurasi CDN Anda jika Anda memiliki integrasi dengan situs web Anda. Periksa Alamat Situs dan Alamat WordPress yang ditentukan untuk situs web Anda dan disimpan di database WordPress.
Ikuti petunjuk yang diberikan di bagian panduan sebelumnya untuk mengatasi kesalahan konfigurasi umum dan memperbaiki "Terlalu banyak pengalihan" di situs web Anda.
Kesimpulan
Pesan kesalahan "Terlalu banyak pengalihan", juga dikenal sebagai loop pengalihan, muncul di situs web Anda ketika browser gagal memuat konten apa pun karena banyaknya pengalihan yang mengikuti. Untuk memperbaiki loop pengalihan, Anda perlu mengatasi konflik yang ada di jalur pengalihan.
Menjalankan bisnis online penuh dengan tantangan, dan menghabiskan waktu berjam-jam untuk menyiapkan infrastruktur server dan memperbaiki kesalahan tidak selalu memungkinkan. Juga bukan ide yang baik ketika memiliki solusi yang tepat dapat menghilangkan kebutuhan untuk menyewa tim khusus agar situs web Anda tetap berjalan tanpa masalah.
Melindungi sekitar satu juta situs WordPress, BackupBuddy dan iThemes Security Pro adalah solusi terdepan di industri untuk keamanan tingkat aplikasi dan pemulihan data. Pemeriksaan kerentanan reguler dan pemindaian malware yang disediakan oleh fitur Pemindaian Situs memungkinkan Anda mengurangi permukaan serangan secara signifikan dan melindungi situs web Anda dari semua kerentanan yang diketahui. Pencadangan otomatis dan pemulihan satu klik yang mudah — BackupBuddy memungkinkan pemulihan dari semua serangan berbahaya dan kesalahan umum.
Plugin Keamanan WordPress Terbaik untuk Mengamankan & Melindungi WordPress
WordPress saat ini menguasai lebih dari 40% dari semua situs web, sehingga menjadi sasaran empuk bagi peretas dengan niat jahat. Plugin iThemes Security Pro menghilangkan dugaan keamanan WordPress untuk memudahkan mengamankan & melindungi situs WordPress Anda. Ini seperti memiliki staf ahli keamanan penuh waktu yang terus-menerus memantau dan melindungi situs WordPress Anda untuk Anda.
Kiki memiliki gelar sarjana dalam manajemen sistem informasi dan lebih dari dua tahun pengalaman di Linux dan WordPress. Dia saat ini bekerja sebagai spesialis keamanan untuk Liquid Web dan Nexcess. Sebelum itu, Kiki adalah bagian dari tim dukungan Liquid Web Managed Hosting di mana dia membantu ratusan pemilik situs WordPress dan mempelajari masalah teknis apa yang sering mereka hadapi. Semangatnya untuk menulis memungkinkan dia untuk berbagi pengetahuan dan pengalaman untuk membantu orang. Selain teknologi, Kiki senang belajar tentang luar angkasa dan mendengarkan podcast kriminal yang sebenarnya.