Demystifying HTTP 401 Tanpa Kebenaran: Isu Sekatan Capaian dalam Pembangunan PHP

王林
Lepaskan: 2024-04-09 16:06:01
asal
1062 orang telah melayarinya

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.

揭秘 HTTP 401 未授权:PHP 开发中的访问限制问题

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');
Salin selepas log masuk

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"');
Salin selepas log masuk

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');
}
Salin selepas log masuk
Dengan mengikuti langkah ini dengan mudah, sekatan capaian dalam aplikasi PHP untuk memastikan bahawa hanya pengguna yang diberi kuasa boleh mengakses data atau sumber sensitif.

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!