1

Kohana でサイトを構築しており、Excel ファイルのアップロードを許可しようとしています。PHPExcel を使用してデータを読み取っています。ローカル サーバーでは正常に動作しますが、リモート サーバーでは失敗します。(リモートサーバーは xmission.com でホストされています)

したがって、コントローラーのコードは次のようになります。

public function action_bulk_upload()
{
    if ($path = Kohana::find_file('vendor', 'PHPExcel')) {
        require_once $path;
    } 

    $objPHPExcel = PHPExcel_IOFactory::load($_FILES['upload']['tmp_name']);              
    $worksheet   = $objPHPExcel->getActiveSheet();

    $range = range('A', 'Z');
    $data  = array();
    $i     = 1;

    while ($worksheet->cellExists('A' . $i)) {
        $row = array();

        foreach ($range as $letter) {
            if (!$worksheet->cellExists($letter . $i)) {
                break;
            }

            $cell = $worksheet->getCell($letter . $i);    
            $row[] = $cell->getValue();
        }

        $data[] = $row;
        $i++;
    }

    $worksheet = null;
    $objPHPExcel->disconnectWorksheets();
    $objPHPExcel = null;

    $view = View::factory('content/admin/events/bulk_form')
        ->bind('data', $data);
    $this->add_content($view);

    // The code gets here
}

コードはコントローラーを通過しますが、残念ながら 500 内部サーバー エラーが発生します。エラーログには次のように書かれています:

[Wed Jun 26 12:45:08 2013] [warn] (104)Connection reset by peer: mod_fcgid: read data from fastcgi server error.
[Wed Jun 26 12:45:08 2013] [warn] (104)Connection reset by peer: mod_fcgid: ap_pass_brigade failed in handle_request function

FastCgi の設定を変更する必要があるように思えますが、これは共有ホスティング アカウントであるため、変更できない可能性があります。助けてくれてありがとう!

4

2 に答える 2