Kecuali Anda telah mengubah pengaturan, data sesi PHP disimpan dalam variasi pada format serialize () sendiri dalam direktori sementara, dan tidak mudah untuk mendapatkannya tanpa menggunakan PHP itu sendiri.
Sayangnya, Anda tampaknya menginginkan kecepatan file yang dilayani secara statis sambil mengotorisasi setiap permintaan secara dinamis, yang sebenarnya bukan tujuan yang kompatibel. Anda dapat melakukan kompromi dengan memiliki skrip PHP super-ringan yang kemudian Anda gunakan mod_rewrite untuk menulis ulang permintaan ke file di dalamnya, yang melewati hal-hal yang baik-baik saja. Contoh super sederhana:
.htaccess:
RewriteEngine On
RewriteMap auth prg:auth.php
RewriteRule (.*) ${auth:$1}
auth.php:
#!/usr/bin/php
<?PHP
set_time_limit(0); # This program needs to run forever.
$stdin = fopen("php://stdin","r"); # Keeps reading from standard in
while (true) {
$line = trim(fgets($stdin));
if (isset($_SESSION['USER_LOGGED_IN'])) {
echo $line\n";
} else {
echo "authfailed.html\n";
}
}
terutama, skrip PHP itu berjalan selamanya, jadi Anda harus me-restart apache jika Anda mengubahnya, saya pikir.
Ini semua belum diuji, tapi itu kira-kira arah yang saya pikir Anda harus masuk.
Referensi: