>source

두 개의 codeigniter 응용 프로그램이 루트 중 하나이고 다른 하나는 하위 디렉토리에 있습니다. 하위 분야의 응용 프로그램에서 루트 (주 응용 프로그램의)에있는 images/artists 폴더의 응용 프로그램에서 파일을 업로드하려고하지만

ERROR  404 Page Not Found: Images/artists
The upload destination folder does not appear to be writable.

서브 디렉토리 애플리케이션에서 업로드하는 데 사용되는 컨트롤러에서이 코드를 실행합니다

if (file_exists('../images/artists')) {
     echo 'directory exists - ';
        if (!is_dir('../images/artists')) { 
            echo 'not a dir';
         }
         else{
            echo 'it is a dir';
         }
}

그리고 "디렉토리가 존재합니다-디렉토리입니다"그리고 업로드 코드를 실행합니다

$gallery_path = realpath(APPPATH . '../images/artists/');
$config['upload_path'] = $gallery_path;
$config['allowed_types'] = 'jpg|png|jpeg';
$config['max_size'] = '20000';
$config['file_name'] = round(microtime(true) * 1000).'.jpg';
$this->load->library('upload', $config);
if ($this->upload->do_upload('img')) {
    $phot_data = $this->upload->data();
    $photo_name = $phot_data['file_name'];
    $this->resizeImage($photo_name);
     $artist_data['image'] = $config['file_name'];
}

// 여기서 사용되지는 않지만 오류를 무시하고 트리거합니까?

function do_upload() {
    if ($_FILES['photos']['name'][0] != '') {
        $name_array = array();
        foreach ($_FILES as $key => $value)
            $_FILES['userfile']['name'] = $value['name'];
            $_FILES['userfile']['type'] = $value['type'];
            $_FILES['userfile']['tmp_name'] = $value['tmp_name'];
            $_FILES['userfile']['error'] = $value['error'];
            $_FILES['userfile']['size'] = $value['size'];
            $config['upload_path'] = realpath(APPPATH . 'images/artists/');
            $config['allowed_types'] = 'gif|jpg|png|jpeg';
            $config['max_size'] = '2000';
            $this->load->library('upload');
            $this->upload->initialize($config);
            $this->upload->do_upload();
            $data = $this->upload->data();
            $name_array[] = $data['file_name'];
    }
    redirect('admin/gallery');
}

이미지 및 아티스트 권한을 확인했는데 777로 설정되어 있습니다. 문제는 어디에 있습니까?

  • 답변 # 1

    첫 번째 스 니펫은존재 여부만 검사하지만, 쓰기 가능한지 (즉, 새 파일을 넣을 수 있는지) 확인하려고합니다.

    자세한 내용은 is_writable을 확인하십시오. 문제를 해결하려면 chmod 600 /path/to/images/artists 를 실행해야합니다.  서버에서.

관련 자료

  • 이전 regex - 구조화되지 않은 텍스트에서 키-값 추출 방법은 무엇입니까?
  • 다음 javascript - 사용자가 탭 및 스크롤 할 때 포인터 다운 이벤트가 모바일에서 트리거되는 것을 방지