HTTP 401 Ralat tanpa kebenaran menunjukkan bahawa pelayan tidak boleh menerima permintaan yang tidak disahkan. Untuk menyelesaikan isu ini, anda boleh mengikuti langkah berikut: Dayakan Pengesahan Asas HTTP untuk menggesa pengguna untuk mendapatkan bukti kelayakan. Sahkan kelayakan yang diberikan dan hanya benarkan akses kepada pengguna yang dibenarkan.
Mendedahkan HTTP 401 Tanpa Kebenaran: Isu Sekatan Akses dalam Pembangunan PHP
HTTP 401 Kod ralat tanpa kebenaran bermakna pelayan menolak permintaan tanpa pengesahan. Ini bermakna pelayan memerlukan kelayakan yang sah untuk mengakses sumber yang dilindungi. Dalam PHP, kod ralat ini boleh dijana dengan mudah dengan menggunakan pemalar HTTP_UNAUTHORIZED:
header('HTTP/1.1 401 Unauthorized');
Untuk menghalang akses tanpa kebenaran, langkah berikut boleh dilaksanakan dalam aplikasi PHP:
1 Dayakan Pengesahan Asas HTTP Ini
akan menggesa pengguna memasukkan nama pengguna dan kata laluan mereka melalui kotak dialog pop timbul.2. Sahkan Bukti Kelayakan
// 在 PHP 脚本的顶部添加以下行: header('WWW-Authenticate: Basic realm="Restricted Area"');
Contoh Praktikal
Berikut ialah skrip PHP mudah yang menunjukkan cara melindungi halaman dan hanya membenarkan akses kepada pengguna yang dibenarkan:if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) { // 从服务器变量中获取提供的凭据 $username = $_SERVER['PHP_AUTH_USER']; $password = $_SERVER['PHP_AUTH_PW']; // 检查凭据的有效性,例如: if ($username === 'admin' && $password === 'password') { // 授权已验证的用户 } else { // 拒绝访问 header('HTTP/1.1 401 Unauthorized'); } } else { // 拒绝访问,因为未提供凭据 header('HTTP/1.1 401 Unauthorized'); }
Atas ialah kandungan terperinci Demystifying HTTP 401 Tanpa Kebenaran: Isu Sekatan Capaian dalam Pembangunan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!