G Analytics Ver2.0 インストールにおける 401 認証エラーの解決法
2015/07/03
環境
WordPress 4.2.2
G Analytics Ver.2系列
さくらレンタルサーバ スタンダード
エラー内容
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/****/*****/htdocs/***/wp-admin/includes/template.php:1935) in /home/****/*****/htdocs/***/wp-content/plugins/g_analytics/analytics_api.php on line 85
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/****/*****/htdocs/***/wp-admin/includes/template.php:1935) in /home/****/fic-group.com/htdocs/fic/wp-content/plugins/g_analytics/analytics_api.php on line 85
Warning: Cannot modify header information - headers already sent by (output started at /home/****/*****/htdocs/***/wp-admin/includes/template.php:1935) in /home/****/*****/htdocs/***/wp-content/plugins/g_analytics/g_analytics.php on line 132
原因
php.iniの設定内容で、セッションの出力に関係する部分があり、その部分が正しく設定されていないと正常に動作しない場合があるとの事。詳細は下記の参考サイトにて
対処方法
php.ini の設定変更する
output_buffering = Off
となっていた部分を
output_buffering = On
とする。
.htaccess にて上記箇所を変更する場合
php_flag output_buffering On
とする。
サーバによって php.ini が使えなかったりするのでその辺は調べてください。
さくらレンタルサーバの場合は Off だったので、管理画面から php.ini にて output_buffering = On を記述しました。
参考
PHPで"session_start()"のエラーが出たときの対応(LUNARAVE WEBクリエイターの仕事と休息)
追記
2015.6.22
Xサーバーでも同様の対応で動作しました。
該当環境では output_buffering = 4096 でしたので、 on に変更です。
2015.7.1
スマイルサーバ(Ver3.0)でも同様の対応で動作しました。
該当環境では同じく output_buffering = 4096 でしたので、 php.ini にて on に変更です。