2015-09-25 138 views
0

我在本地機器上編寫了一個php腳本。但是當我上傳它時,我的ftp服務器也遇到了一些問題。顯然,我不能使用重命名功能等,並不得不改變爲ftp_rename等。所以問題是,我不能重命名或刪除任何文件與我的PHP腳本。我試圖在沒有任何運氣的情況下更改文件和根目錄的權限。我可以瀏覽文件,但不能重命名或刪除它們。我也沒有收到任何錯誤消息,該文件不會加載,如果我嘗試重命名或刪除,則會收到500服務器錯誤。有什麼建議麼?無法使用php重命名或刪除ftp服務器上的文件

$ftp_server = ""; 
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); 
$login = ftp_login($ftp_conn, "username", "password"); 

$files = ftp_rawlist($ftp_conn, "www/subtitlesyncer/uploads"); 
ftp_delete($ftp_conn, "www/subtitlesyncer/uploads/newfile.txt") 
if (ftp_rename($ftp_conn, "www/subtitlesyncer/uploads/newfile.txt","www/subtitlesyncer/uploads/new_file_edited.txt")) { 
    ... 
} 

我使用此設置,但無法獲取任何錯誤。

ini_set('display_errors',1); 
ini_set('display_startup_errors',1); 
error_reporting(-1); 

這是我嘗試編輯該文件:

-rw-r--r-- 1 <username> <username> 130782 Sep 28 14:41 newfile.txt 

我沒有設置文件夾和子文件和子文件夾的權限爲777(用於測試),但是當我創建文本文件它得到644但我已經將文本文件的權限更改爲777,我仍然不能刪除它。

+0

必須有一些錯誤信息。確保你沒有關閉PHP警告。 –

+0

我可以在哪裏更改該設置? – patricmj

+0

使用['error_reporting(E_ALL);'](http://php.net/manual/en/function.error-reporting.php) –

回答

0

確保文件與擁有該文件的用戶和組的權限相匹配。如果您試圖以組Apache中的用戶Apache的身份刪除它,但是您的文件所有者是ftp_server(或者其他非步進變體),那麼您將遇到問題。另外,查看特定服務器的http錯誤日誌中的錯誤。必須有一些東西。

+0

如何獲取該http錯誤日誌?它位於哪裏? – patricmj

+0

取決於您的配置。 Apache conf文件應該給你一個想法。最常見的地方:/var/log/httpd/error.log – studio1057

相關問題