2017-06-24 131 views
1

我已經編寫了簡單的PHP代碼來上傳圖像文件。圖像上傳成功。無法使用FTP下載文件,通過PHP上傳文件後

這裏是我的代碼,

mkdir("uploaded images", 0777, true); 
move_uploaded_file($sourcePath,$targetPathNew); 

但是當我下載的圖像,它顯示我 Response: 550 Access is denied. Error: Critical file transfer error

enter image description here

感謝

+0

你每次創建文件夾? –

+0

你用什麼用戶連接到你的FTP服務器? – Xatyrian

+0

不,文件夾只創建一次。 –

回答

2

這是由於該文件的權限。上傳的文件由Web服務器用戶(例如www-data)擁有,您的FTP服務器在不同的用戶下運行。雖然您將文件夾的權限更改爲0777(允許所有人),但該文件不會繼承相同的權限。

要解決這個問題,您可能會在move_uploaded_file(...)之後的代碼中添加chmod($targetPathNew, 0777)

雖然這是不可能的,因爲一些更嚴格的服務器配置。根據你對Linux權限不太熟悉的問題(如果我錯了,很抱歉),我不會深究這一點。你可以在這裏找到一些關於權限的基本信息,例如 - https://www.tutorialspoint.com/unix/unix-file-permission.htm