2017-11-02 15 views
0

私はUbuntuとPHPが設定されたAWSインスタンスを持っています。すべてのものが完璧に動作します。ファイルアップロードのみが動作しません。 PHPで開発されたアプリケーション[codeigniter]コードシニターを使用してAWS [Ubuntu]にファイルをアップロードできません

$this->load->library('form_validation'); 
$config = [ 
      'upload_path' => "./data/user-avatar", 
      'allowed_types' => 'gif|jpg|png|jpeg|JPEG', 
      'encrypt_name' => TRUE 
     ]; 

     $this->load->library('upload',$config); 

if($this->upload->do_upload()) 
{ 
    $data = $this->upload->data(); 
    echo $image = $data['file_name']; 
} else { 
    echo "I am here in else"; 
} 

これはexecのelseブロックです。アプリケーションはローカルで正常に動作します。

  1. はのphpinfoファイルアップロード時にその777
  2. チェックがエラーで見つけるために任意の助けが理解されるであろう

上にあるアップロードディレクトリのパーミッションをチェック。

おかげ のPrashant

+1

この '$ error = $ this-> upload-> display_errors();を使用して、ファイルのアップロードでエラーを確認できます。これを試すことができます。 –

答えて

1

あなたはがphp.iniたり、メインのPHPの設定ファイルに十分な大きされているあなたの最大アップロードサイズ最大のポストを確認していましたか? Xより大きいファイルを受け入れることができませんでした。

また、$data['error']を取得して、> 0のコードがあるかどうかを確認し、これから回答を見つけることができます。おそらく$error = $this->upload->display_errors();でもっと詳しく説明できます

また、is_dir()を使用してディレクトリが存在するかどうかをチェックして、別の相対パス(チェックの価値がある)を指していないことを確認します。

+0

ありがとうございます。私は$ this-> upload-> display_errors();と考えました。これはアップロード後に動作します。 –

関連する問題