2013-07-08 2 views
4

У меня возникает проблема при загрузке изображений на S3.Я использую S3 класс и jqueryimageuploader плагин для того же самого. Я установил базовое приложение, и он отлично сработал с моей локальной машины. Когда я развернул его на beanstalk, он начал бросать ошибку. Я приложил к нему снимок консоли. Я добавляю свой код для справки здесь. enter image description here Это начало файла index.html -Обнаружение ошибки внутреннего сервера 500 при загрузке изображений на S3

<!DOCTYPE HTML> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>jQuery File Upload Example</title> 
</head> 
<body> 
<input id="fileupload" type="file" name="files[]" data-url="http://mydomain.elasticbeanstalk.com/server/php/index.php" multiple> 
<script src="js/jquery.min.js"></script> 
<script src="js/vendor/jquery.ui.widget.js"></script> 
<script src="js/jquery.iframe-transport.js"></script> 
<script src="js/jquery.fileupload.js"></script> 
<script> 
$(function() { 
$('#fileupload').fileupload({ 
    dataType: 'json', 
    done: function (e, data) { 
     $.each(data.result.files, function (index, file) { 
      $('<p/>').text(file.name).appendTo(document.body); 
     }); 
    } 
}); 
$('#fileupload').fileupload({ 
/* ... */ 
progressall: function (e, data) { 
    var progress = parseInt(data.loaded/data.total * 100, 10); 
    $('#progress .bar').css(
     'width', 
     progress + '%' 
    ); 
    } 
}); 
}); 

</script> 
<style> 
.bar { 
    height: 18px; 
    background: green; 
} 

Мой index.php -> это называется на загрузки файла нажмите

<?php 
error_reporting(E_ALL | E_STRICT); 
require('UploadHandler.php'); 
$upload_handler = new UploadHandler(); 

?> 

Файл uploadHandler.php может быть найден here
Я буду д.д. части модифицированной мною для загрузки на S3

$bucket = "my bucket nmae"; 
$s3 = new S3(awsAccessKey, awsSecretKey); 
$response = $s3->putObjectFile($file_path,$bucket,$file->name,S3::ACL_PUBLIC_READ); 
$thumbResponse = $s3->putObjectFile('files/thumbnail/'.$file->name,$bucket,'images /'.$file->name,S3::ACL_PUBLIC_READ); 
echo $response; 
echo $thumbResponse; 
if ($response==1) { 
echo 'HERER enter!!'; 
    } else { 
     $file->error = "<strong>Something went wrong while uploading your file... sorry.</strong>"; 
} 

Я не загружая тоже большие файлов и она отлично работает на моей локальной машине, но не работает на beanstalk.Any помощи будет great.Thank вам для внимание.

+2

И ваши журналы ошибок говорят? –

+0

Проверьте журнал ошибок вашего сервера. У него будет больше информации о 500 (если вы не получите 500 из амазонки). –

+0

Я сконфигурировал журналы через консоль, но ошибка не была зарегистрирована. :( – KillABug

ответ

3

HTTP-500 ошибка означает, что у вас есть что-то «неправильно» в вашем приложении, которое нужно исправить (то есть: это вина разработчиков, а не по вине пользователя, как 404)

Чтобы выяснить, что именно этот вопрос является (может быть, по правде говоря, 1000 причин, по которым создается HTTP 500), вам нужно будет посмотреть на файлы журнала ошибок. Если он использует стандартный стек LAMP, вы можете найти этот журнал ошибок здесь: /var/log/apache2/error.log (но может быть много других мест)

Я предполагаю, что у вас есть файл разрешений. Я предполагаю, что пользователь не имеет права на запись в папку, в которую вы загружаете изображения, и в этом случае вам нужно будет записать эту папку (в Linux просто введите: sudo chmod -R a + rwX/сделать/это/папку/что-то/доступным для записи). но опять же это всего лишь предположение, вам нужно сначала проверить файл журнала ошибок.

+0

Я не уверен, что ее разрешения возникли, когда я загрузил файлы через локальную машину в ту же папку. Я пошел через журналы, и нет ничего по крайней мере в журналах amazon.I будет проходить через файлы журнала beanstalk и возвращаться – KillABug

+0

Вот что говорят журналы: :: 1 - - [08/Jul/2013: 03: 10: 01 +0000 ] «ОПЦИИ * HTTP/1.0» 200 - «-» «Apache/2.4.3 (Amazon) (внутреннее фиктивное соединение)» 10.164.47.96 - - [08/Jul/2013: 03: 10: 52 +0000] " - "408 -" - "" - " ' '10.164.47.96 - - [08/Jul/2013: 14: 27: 50 +0000]" GET/HTTP/1.1 "403 202" - "" Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, например, Gecko) Chrome/27.0.1453.116 Safari/537.36 " 10.164.47.96 - - [08/Jul/2013: 14: 27: 50 +0000]" GET /favicon.ico HTTP /1.1 "404 209" - "" Mozilla/5.0 (Wi ndows NT 6.1) AppleWebKit/537.36 (KHTML, как и Gecko) Chrome/27.0.1453.116 Safari/537.36 "' – KillABug

+0

Это была ошибка разработчиков, если быть честным! : P Я неправильно настроил путь и не перекрестно проверил после загрузки на сервер. Спасибо за ответ. – KillABug

Смежные вопросы