Wordpress không sử dụng phiên.
Tôi luôn tự hỏi WP sử dụng cơ chế nào để duy trì trạng thái người dùng khi người dùng đi từ trang này sang trang khác?
Wordpress không sử dụng phiên.
Tôi luôn tự hỏi WP sử dụng cơ chế nào để duy trì trạng thái người dùng khi người dùng đi từ trang này sang trang khác?
Câu trả lời:
Nó sử dụng cookie trần và lưu trữ phía khách hàng thông tin trạng thái đăng nhập.
wordpress_7339a175323c25a8547b5a6d26c49afa = tên người dùng của bạn% 7C1457109155% 7C170f103ef3dc57cdb1835662d97c1e13;
Muối có trong tệp wp-config.php của bạn:
/**#@+
* Authentication Unique Keys and Salts.
*
* Change these to different unique phrases!
* You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
* You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
*
* @since 2.6.0
*/
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');
Cookie xác thực, tên của nó được lưu trữ bên trong AUTH_COOKIE, được hình thành bằng cách ghép nối Word wordpress_ với tổng md5 của trang web được đặt trong default-constants.php. Đây là hành vi mặc định và có thể được ghi đè từ bên trong tệp cấu hình của bạn, bằng cách thiết lập một số hằng số trả trước.
Cookie xác thực ghép nối tên người dùng, dấu thời gian cho đến khi cookie xác thực hợp lệ. Và một HMAC, là loại băm thiên vị khóa cho những người đã rút TL; DR ngay bây giờ. Ba biến được nối với ký tự ống |.
Đây là cách thức xây dựng HMAC:
$hash = hash_hmac('md5', $username . '|' . $expiration, wp_hash($username . substr($user->user_pass, 8, 4) . '|' . $expiration, $scheme));
Theo bài viết này , nơi hầu hết các thông tin trong câu trả lời này xuất phát từ việc một hacker sẽ mất khoảng một tuần để gửi 30 yêu cầu nếu họ biết cụm từ duy nhất của bạn là gì và khó hơn 200.000.000.000.000.000.000.000.000.000 lần nếu khóa của bạn là duy nhất.
Cookies chỉ là nơi lưu trữ dữ liệu phía máy khách ... Cookies WordPress
Trong thực tế, người ta có thể có cookie mà không có phiên, nhưng không có phiên nào không có cookie.
session_start()
rõ ràng. Bây giờ, rõ ràng, wordpress không có session_start()
bất cứ nơi nào trong cốt lõi của nó. Xem nơi tôi đang bối rối bởi bình luận cuối cùng của bạn?