2011年10月04日
さくらでPukiWikiのBASIC認証できないなの
さくらインターネットのレンタルサーバーでwikiつくろうと思ったのに、PHPがCGI版しか入っていないのでpukiwikiのBASIC認証が使えない。
なんでつかえないの。
とりあえず調べるとこんな記事が見つかった。
http://www.hitarts.com/blog/archives/15
なぜモジュール版だと使えるのにCGI版だと使えないのか。PHPのHTTP認証では$_SERVER[’PHP_AUTH_USER’]と$_SERVER[’PHP_AUTH_PW’]という環境変数を参照して認証を行なっているらしい。しかし、CGI版のPHPではこれらの環境変数が参照できない仕様になっているとのこと。
そして$_SERVER['HTTP_AUTHORIZATION']を参照できるようにすれば$_SERVER[’PHP_AUTH_USER’]と$_SERVER[’PHP_AUTH_PW’]は内部で求めてくれるらしいのでmod_rewriteする。
.htaccessに
RewriteEngine On RewriteCond %{HTTP:Authorization} ^(.*) RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
と書くだけ。