1

내 phonegap 앱에서 사진을 찍은 다음 FileTransfer 플러그인을 사용하여 내 서버에 업로드하려고합니다. 오류 코드 1이 표시되지만 다른 설명이 없습니다. 매우 실망 스럽습니다. 나는 행운이없는 사람에게 알려진 모든 문서와 블로그를 샅샅이 뒤 졌어.코도 바 FileTransfer 이미지 업로드를위한 플러그인 오류 코드

저는 기본 램프 서버를 사용하고 있으며 계속해서 http 500 코드를 제공합니다. 99.9 %는 내 웹 서버가 다른 웹 서버에서 테스트했기 때문에이 오류가 내 서버에만 해당되며 코드가 정상적으로 작동 함을 확인했습니다. 다음은

{"code":1,"source":"file:///storage/emulated/0/Android/data/io.cordova.xxappxx/cache/1477607161788.jpg","target":"https://server.com/php/uploadPhoto.php","http_status":500,"body":"\t","exception":"https://server.com/php/uploadPhoto.php"} 

내 프런트 엔드 JS 코드입니다 : 여기

function uploadPhoto(imageURI) { 
    var options = new FileUploadOptions(); 
    options.fileKey="file"; 
    options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1); 
    alert(options.fileName); 
    options.mimeType="image/jpeg"; 

    var params = {}; 
    params.value1 = sessionStorage.getItem("token"); 
    options.params = params; 
    options.chunkedMode = false; 
    options.headers = {Connection: "close"}; 

    var ft = new FileTransfer(); 
    ft.upload(imageURI, "https://servername.com/php/uploadPhoto.php", function(result){ 
    console.log(JSON.stringify(result)); 
    }, function(error){ 
    console.log(JSON.stringify(error)); 
    }, options, true); 
} 

그리고 호출되고 내 백엔드 PHP 코드 (uploadPhoto.php)된다

다음은 응답이다
<?php 
session_start(); 
header('Access-Control-Allow-Origin : *'); 
$new_image_name = "$userId.jpg"; 
move_uploaded_file($_FILES["file"]["tmp_name"], "/var/img/".$new_image_name); 
?> 
+0

서버 구성을 확인 했습니까? PHP에서 move_uploaded_file() 함수를 사용하여 큰 파일을 업로드하는 경우 간단한 트릭을 수행하십시오. 1) 웹 서버의 루트 폴더에 .htaccess 파일을 만듭니다. 2) .htaccess 파일 옆에 다음 코드를 입력하고 저장하십시오. 'php_value로이 upload_max_filesize 8M php_value로의 post_max_size을 8M php_value로의 max_execution_time을 200 php_value로의 max_input_time 200' 또는 php.ini 파일에서 변경할 나는 그 크기와 함께 할 수있다 생각 – Deepak

+0

구성을 설정 ...하지만 난 그냥 구현 이것은 여전히 ​​동일한 결과를 얻고 있습니다. 그 밖의 무엇을 시도해야할지 모르겠습니다. 내가 base64encode 이미지를 시도하고 아약스를 사용하여 업로드 ... 그 작품을 희망합니다 – brdeav39

+0

나는 이것이 최대 크기 때문에 더 작은 size.ry 업로드 업로드 디렉토리 경로 및 폴더 권한을 확인 업로드 업로드하기 때문에 일어나는 것 같아 – Deepak

답변

1

이것은 결국 이미지 크기의 문제가되었습니다. 나는 대학을 위해이 프로젝트를 진행하고 있었고 그들의 서버에는 많은 보안 장치가 설치되어있었습니다.이 보안 구성 중 하나는 업로드를 막고있는 파일 업로드 크기 제한이 매우 작았습니다. /var/log/ 디렉토리의 일부 로그 파일을 스캔하여이를 발견했습니다.