2009-09-17 51 views
0

我開發了一個圖像上傳應用程序,它使用Flash加載圖像,調整圖像大小並將圖像數據的bytearray發送到一個PHP文件,輸出調整大小使用下面的代碼文件 -將圖像上傳到EC2實例(Flash - > PHP)的幫助

$default_path = '/uploads/temp/'; 
$filename = $_GET["filename"]; 
$destination = $default_path . $filename; 
if(file_put_contents($destination, $GLOBALS["HTTP_RAW_POST_DATA"])) { 
echo "The file " . basename($_FILES[ 'Filedata' ][ 'name' ]) . " has been uploaded;"; 
} else { 
    echo "FILE UPLOAD FAILED"; 
} 

,當我從一個專用的Windows上運行呢?這真是棒極了2003的Web服務器,但現在,我想在一個EC2實例上運行這一點,已停止工作,我只得到了「文件上傳失敗」消息。我可以從Firefox的Firebug插件中看出,bytearray數據正在發佈到EC2實例,但是看不到會導致問題。

關於EC2我正在運行CentOS映像,安裝了PHP和Apache,我不知道從哪裏開始解決這個問題!請告訴我我需要在這裏尋找什麼問題,有什麼想法?

我檢查錯誤日誌,並得到以下錯誤消息 -

file_put_contents(/uploads/temp/abcdefg.JPG) [<a href='function.file-put-contents'>function.file-put-contents</a>]: failed to open stream: No such file or directory 

這是與pointint做了錯誤的目錄?或有人在下面陳述的權限?我該如何給PHP寫這個目錄的權限,並且應該使用絕對路徑來引用我想要寫映像的目錄?

歡呼

回答

1

可能是一個權限的問題,也許是PHP用戶沒有寫入指定目錄的權限。

apache錯誤日誌中是否有任何消息?

+0

我該如何檢查?我不明白你的意思是PHP用戶?我如何知道這個PHP用戶有什麼權限以及如何更改它們? – undefined

+0

我已更新我的問題 – undefined

+0

請參閱我對另一個問題的回答(以避免重新輸入所有內容...):http://stackoverflow.com/questions/1418183/problem-getting-image-to-save/1418195# 1418195 – jeroen