この Wiki ではスパム防止のために認証を導入しています。
login.inc.php が動かなくなったっぽいので BASIC 認証に変更しました。
サーバー OS のバージョンが上がり従来の認証が使えなくなった。
htpasswd -c /home/monaos/dont_erase_htpasswd mona
AuthType Basic AuthName "Authentication required" AuthUserFile /home/monaos/dont_erase_htpasswd mona AuthGroupFile /dev/null <Files edit.php> require valid-user </Files>
--- init.php.orig 2006-06-12 09:37:44.000000000 +0900
+++ init.php 2006-08-16 14:01:00.000000000 +0900
@@ -277,6 +277,11 @@
exit;
}
$arg = input_filter($arg); // \0 除去
+if (!defined('EDIT_OK') && ereg('^cmd=edit&', $arg)) {
+ pkwk_headers_sent();
+ header('Location: ' . $script . 'edit.php?' . $arg);
+ exit;
+}
// unset QUERY_STRINGs
foreach (array('QUERY_STRING', 'argv', 'argc') as $key) {--- pcomment.inc.php.bakki.monao2006-09-24 17:50:11.000000000 +0900p.bak pcomment +++ pcomment.inc.php 2009-04-17 22:33:40.000000000 +0900
@@ -124,7 +124,8 @@
$s_nodate = htmlspecialchars($params['nodate']);
$s_count = htmlspecialchars($count);
- $form_start = '<form action="' . get_script_uri() . '" method="post">' . "\n";
+// $form_start = '<form action="' . get_script_uri() . '" method="post">' . "\n";
+ $form_start = '<form action="http://wiki.monaos.org/edit.php" method="post">' . "\n";
この話題はもう古い。
さくらインターネットに wiki.monaos.org を引っ越したことにより、PHPからBASIC認証が使えなくなりました。
そのためスパムよけのために別の認証を導入しました。(自作プラグイン/login.inc.php - PukiWiki-official)
これは PHP のセッション機能を利用したもので
という形でログイン情報を保存します。
この機能はうまく動いているのかと思いきや、どうも頻繁にログインを促されている気がします。
そこで調べてみると
gc_maxlifetime が怪しいので、1440 => 5184000 と増やしましたが状況に変化はありません。
ひきつづき調査が必要です。
さらに調べるとさくらのデフォルトでは session.cookie_lifetime = 0 となっているのが問題であることが分かりました。
セッションID である PHPSESSID クッキーがブラウザ閉じると無効になる設定になっています。(他の値はもっと長い)
これを 0 => 5184000 としたところうまくいきました。
/php.ini を作り
session.gc_maxlifetime=5184000 session.cookie_lifetime=5184000
とする。
以下のような、huga.php というファイルを作り、ブラウザからアクセスすればパラメータが見られます。
<?php phpinfo(); ?>
現在のセッション周りのパラメータ
| Directive | Local Value | Master Value |
| session.auto_start | Off | Off |
| session.bug_compat_42 | On | On |
| session.bug_compat_warn | On | On |
| session.cache_expire | 180 | 180 |
| session.cache_limiter | nocache | nocache |
| session.cookie_domain | no value | no value |
| session.cookie_lifetime | 0 | 0 |
| session.cookie_path | / | / |
| session.cookie_secure | Off | Off |
| session.entropy_file | no value | no value |
| session.entropy_length | 0 | 0 |
| session.gc_divisor | 100 | 100 |
| session.gc_maxlifetime | 5184000 | 5184000 |
| session.gc_probability | 1 | 1 |
| session.name | PHPSESSID | PHPSESSID |
| session.referer_check | no value | no value |
| session.save_handler | files | files |
| session.save_path | /tmp | /tmp |
| session.serialize_handler | php | php |
| session.use_cookies | On | On |
| session.use_only_cookies | Off | Off |
| session.use_trans_sid | Off | Off |
ドキュメントルートに php.ini を作り変更したい値だけ key = value の形式で書く。
%cat ~/www/wiki.monaos.org/php.ini session.gc_maxlifetime=5184000
コメントはありません。 コメント/このWikiについて/認証?