3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

(PHP)header関数使ってBasic認証するときのphp.iniの注意点

phpでベーシック認証 - bnoteを参考にし、PHPのheader関数を使って、Basic認証をするコーディングをしてたんですが、どうもうまくいきません。

WWW-Authenticate ヘッダ送信後に認証ダイアログが表示されるべきなのですが、そこをスルーし401のヘッダ送信部分が動いているようなのです。

で、調査するとphp.iniの設定に問題があることが分かりました。

PHP:Warning: Cannot modify header information - headers already sent by ...の解決策: go4itの情報が参考になりました。

php.iniの output_buffering の値を On にすればいいようです。

ただベーシック認証を使う方法よりかは、フォーム認証を使う方が一般的ですよね。