私は単一ファイル PHP ギャラリーと OpenID プロバイダーを持っています。ギャラリーは登録ユーザーのみがアクセスできるようにする必要があるため、LightOpenID を介してギャラリーにログインを追加しようとしました。さらに、ログイン状態を維持するために Cookie を設定する必要があります。
結論は
- index.php を開く - OpenID を要求する - FINE
- OpenIDを入力してCookieを設定する - FINE
- ギャラリーを表示: 画像はありません!
画像が表示されません... スクリプトは CSS を読み込みますが、画像は読み込みません。ソースは次のとおりです。
index.php
<?php
if ($_SERVER['REMOTE_ADDR'] == $_SERVER["HTTP_HOST"]) {
/* Single File PHP Gallery 4.1.1 (SFPG)
... */
} else {
$key = '27' .date(W). '28' .date(n). '35';
if (isset($_COOKIE[$key])) {
echo 'Session set ';
}
else {
header ("Location: http://example.de/intern/login.php");
# echo 'Session NOT set ';
exit();
}
/*
Single File PHP Gallery 4.1.1 (SFPG)
...
login.php
...
if ($openid->validate()) {
$key = '27' .date(W). '28' .date(n). '35';
setcookie($key, $key, time()+3600); # 1 hour
...
スクリプトには Cookie がないため、サーバーは SFPG スクリプトが画像にアクセスすることを許可していないと思います。
よろしくお願いいたします。
単一ファイル PHP ギャラリー: http://sye.dk/sfpg/