Periksa Akhir Baris di Kata Sandi Proxy Itu
Pisahkan pembatas rekaman dari isi kredensial saat endpoint yang dimuat dari file proxy gagal diautentikasi.
Endpoint berfungsi saat dimasukkan secara manual dan gagal saat dimuat dari file. Sebelum merotasi kata sandi, periksa bagaimana rekaman dibaca.
File berorientasi baris memiliki pembatas. Jika parser meninggalkan baris baru di akhir pada bidang terakhir, kredensial yang diteruskan ke klien bisa berbeda dari yang Anda maksud. CRLF gaya Windows membuat dua byte layak diperiksa.
Fungsi file() PHP mendukung FILE_IGNORE_NEW_LINES untuk membaca rekaman tanpa pembatas akhir barisnya. Gunakan perilaku yang sesuai dengan format file yang didokumentasikan.
Berhati-hatilah dengan perbaikan lanjutan yang populer: memangkas setiap bidang. Spasi bisa menjadi karakter kata sandi yang sebenarnya. Menghapus semua spasi di awal dan akhir mengubah kredensial, bukan sekadar menghapus terminator rekaman.
Tentukan juga pemisahnya. Format informal yang dipisahkan titik dua bisa menjadi ambigu ketika kata sandi atau alamat IPv6 berisi titik dua. Baca rekaman sesuai format itu, pertahankan byte kata sandi yang dimaksud, dan baru kemudian enkode komponen untuk URL endpoint jika diperlukan.
Untuk diagnostik, bandingkan panjang atau nilai uji terkontrol yang bukan rahasia. Mencetak kata sandi sebenarnya atau URL lengkap yang membawa kredensial menciptakan masalah lain saat menyelesaikan kesalahan parser yang sangat kecil.