Ketahui amalan keselamatan penting setiap pembangun PHP mesti pakai untuk melindungi aplikasi web. Daripada membersihkan input kepada melaksanakan HTTPS dan menggunakan pengepala keselamatan moden, panduan ini menyediakan contoh praktikal dan arahan langkah demi langkah untuk mengurangkan kelemahan seperti suntikan SQL, XSS dan CSRF.
Jangan sekali-kali mempercayai input pengguna; sahkan dan bersihkannya sebelum diproses.
Contoh: Mengesahkan dan membersihkan input borang hubungan
<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "Invalid email address!"; } else { echo "Name: " . htmlspecialchars($name) . "<br>Email: " . htmlspecialchars($email); } } ?>
Penjelasan:
Lindungi daripada serangan SQL Injection.
Contoh: Menggunakan PDO dengan pernyataan yang disediakan
<?php try { $pdo = new PDO('mysql:host=localhost;dbname=testdb', 'root', ''); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $pdo->prepare("SELECT * FROM users WHERE email = :email"); $stmt->bindParam(':email', $email, PDO::PARAM_STR); $email = $_POST['email']; $stmt->execute(); $user = $stmt->fetch(PDO::FETCH_ASSOC); if ($user) { echo "Welcome, " . htmlspecialchars($user['name']); } else { echo "User not found."; } } catch (PDOException $e) { echo "Database error: " . $e->getMessage(); } ?>
Penjelasan:
Dengan mengikuti amalan terbaik keselamatan ini, anda boleh membina aplikasi PHP teguh yang melindungi kedua-dua data pengguna dan integriti pelayan. Keselamatan bukan tugas sekali sahaja tetapi proses berterusan yang memerlukan kemas kini, audit dan pematuhan piawaian pengekodan secara berkala. Gunakan kaedah ini untuk meningkatkan kebolehpercayaan dan kebolehpercayaan aplikasi anda.
Sokongan dan maklum balas anda amat bermakna! ?
Atas ialah kandungan terperinci Mengamankan Aplikasi Web PHP: Amalan Hands-On. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!