====== インストール ====== 普通にインストールOK ====== PHPのセーフモードを回避 ====== [[XREA:START#PHPがセーフモードで実行されるため起きる問題]] セーフモードだと画像などの添付が出来ないのでセーフモード以外(CGIモード)で実行するように修正。doku.phpと同じフォルダの.httaccessに以下を記述。 AddHandler application/x-httpd-phpcgi .php ====== FireFoxでCSSが適用できない問題の回避 ====== [[XREA:START#PHPで出力されるContent-Typeが全てtext/htmlに書き換えられてしまう]] * /////lib/exe/css.phpをCGIモードで動作するようにする。css.phpをcss.cgiにリネーム(バックアップを忘れずに)。 * css.cgiの先頭に以下の一行を追加。 #!/usr/local/bin/php * css.cgiのパーミッションを755に変更。 * /////lib/inc/template.phpを修正。css.phpを呼び出しているところをcss.cgiに修正。 //load stylesheets $head['link'][] = array('rel'=>'stylesheet', 'media'=>'all', 'type'=>'text/css', 'href'=>DOKU_BASE.'lib/exe/css.cgi?s=all&t='.$conf['template']); $head['link'][] = array('rel'=>'stylesheet', 'media'=>'screen', 'type'=>'text/css', 'href'=>DOKU_BASE.'lib/exe/css.cgi?t='.$conf['template']); $head['link'][] = array('rel'=>'stylesheet', 'media'=>'print', 'type'=>'text/css', 'href'=>DOKU_BASE.'lib/exe/css.cgi?s=print&t='.$conf['template']); ---- ==== nph-cgiで実行できないかテストしてみた ===== ヘッダ情報を完全にスクリプトで出力するモードらしいので試してみました。PHPの「セーフモードではないモード」では変化が無かったので結果は省略します。 * css.cgiをnph-css.cgiにファイル名変更(これだけでいいらしい)。 * /////lib/inc/template.phpを「FireFoxでCSSが適用できない問題の回避」同様に修正。css.phpを呼び出しているところをnph-css.cgiに修正。 === 通常CGIモードのレスポンス(前述「FireFoxでCSSが適用できない問題の回避」を実施した場合のレスポンス。) === HTTP/1.x 200 OK Date: Thu, 19 Jun 2008 08:05:28 GMT Server: Apache Cache-Control: public, max-age=3600 Etag: "5de24d0e6fbb0f10adf4a23a9ca28064" Pragma: public Last-Modified: Thu, 19 Jun 2008 08:04:35 GMT Content-Type: text/css; charset=utf-8 Connection: close === 結果(失敗) === レスポンスヘッダは正しくOK出力されましたが、Content-Typeなどが本文のほうに出力されてしまいました。 HTTP/1.x 200 OK