我升級到MediaTemple上的(dv)服務器,他們使用Plesk 10.1.1。PHP - fopen似乎沒有工作,不能更改權限
我有這種類型的代碼的很多瞬間:
$myFile = "textfile.txt";
$fh = fopen($myFile, 'w') or die("cant open");
$stringData = "CONTENT";
fwrite($fh, $stringData);
fclose($fh);
能正常工作的XAMPP(本地主機),但是一旦其在服務器上,這是行不通的。它會死();並說它無法打開文件。即使該文件在那裏。
我做了一些測試,發現它的權限問題。如果我將文件更改爲0666,則可以使用。然而,我不能chmod自己像這樣的文件:
這似乎並不奏效。我也試過0777。我也嘗試使用ftp url來獲得相同的結果。
所以...我有兩個問題...
問題1:
我如何使用chmod工作?我如何獲得PHP chmod();工作,有什麼我得改變在php.ini?
問題2(所需的解決方案):
我有什麼在php.ini/Plesk中/服務器設置改變使我的工作的第一位,而不必chmod來666再回到655每次我創建/編輯一個txt文件?
謝謝!
Ps。 allow_fopen已打開
我認爲你的服務器用戶對textfile.txt沒有寫權限。另外,當您手動修改權限時,也是不同的用戶(誰有權利)。檢查這個。 – 2011-04-04 07:46:51
你提到的allow_fopen是什麼? – Oswald 2011-04-04 07:53:39
很可能是ftp服務器「使用」另一個用戶帳戶(和/或組)比web服務器用來運行php。然後它是一個配置thingy,而不是你需要改變你的代碼 - > serverfault.com或webmasters.stackexchange.com – VolkerK 2011-04-04 08:01:28