2009-10-16 59 views
0

我正在用php創建一個文件。我只想在目錄下能夠創建它,沒有內容。然後我希望能夠在使用ftp訪問我的服務器時進行編輯。我不能! php的用戶與ftp用戶不同,最後一個用戶沒有權限更改它!我嘗試了chmod,umask,chown,但沒有任何效果。任何人都知道如何去做?由於處理php中的文件

乾杯

回答

0

給您的文件世界可寫權限chmod('filename', 0666)

+0

我做到了!這是我通過ftp獲得的信息,我嘗試更改文件: 文件上載成功,但設置權限和/或時間戳時發生錯誤。如果問題仍然存在,請打開「忽略權限錯誤」選項 – George 2009-10-16 14:12:51

+0

好的,也許這只是winscp的一件惱人的事!我會忽略它!謝謝 – George 2009-10-16 14:15:14

+0

如上所述,不要將值設置爲0777。 – LiamB 2009-10-16 14:18:45

4

在PHP中,移動或以其他方式創建該文件後,只要改變它的使用chmod()權限:

chmod($file, 0666); 

不要給予執行權限(其中0777會),否則系統上的某個人可以執行它。巨大的安全漏洞。

+0

某人怎麼能這樣做?我有沒有設置這些權限的文件夾(讓我們說圖片)? – George 2009-10-16 14:17:19

+1

如果文件位於文檔根目錄下,想象有人上傳somefile.php,然後通過Web瀏覽器調用它。不好。或者想象一下,如果他們上傳somefile.pl並且他們有權訪問系統,然後可以運行該腳本,並以與Web服務器相同的用戶身份運行。也不好。 – cletus 2009-10-16 14:21:44