2010-10-28 234 views
0

幫助! PHP無法寫入我的Web目錄中的任何文件。我不知道爲什麼!我有文件設置爲777的權限,但它不起作用!這裏是有問題的代碼:PHP無法寫入文件 - 777權限!

<?php 

if ($f=fopen('test.txt', 'a')) 
     echo 'file opened'; 
fclose($f); 

什麼都沒有迴應!我不知道爲什麼:(.. userid和gid是0:0的腳本,如果我試圖chown到它不起作用。

請幫助我需要這個固定asap這應該是一件容易的事做,但該死的服務器是困難的。

及其美分OS如果多數民衆贊成任何幫助,運行..

+0

檢查Apache的錯誤日誌和設置PHP的日誌級別調試。 – Ency 2010-10-28 21:11:00

+1

檢查錯誤,我通常做的事:「尾-f /無功/日誌/的httpd/error_log中」當我訪問代碼 – Marm0t 2010-10-28 21:17:38

+1

UID/GID是0?你以root身份運行web服務器?這是非常不安全的... – 2010-10-28 21:39:41

回答

2

你需要啓用相應的SELinux布爾值,並用適當的標籤目錄文件的上下文,如果你想在那裏寫文件。

或者你可以禁用SELinux,但不要那麼做

+0

*如果* OP使用SELinux。 – 2010-10-28 21:12:43

0

嘗試使用絕對路徑。可能是你認爲的其他目錄。也可能是不能作爲root訪問的網絡文件系統。

0

如果你只是上傳這個PHP到一個典型的多用戶服務器,你有777權限,但不能寫文件,最有可能的「罪魁禍首」是suPHP

在安裝了suPHP模塊的系統中,一個不能有777組的權限。

您可以檢查這個安裝在系統上的phpinfo存在()。

+0

這不會返回500內部服務器錯誤嗎? – webbiedave 2010-10-28 22:16:30

+0

我們不得不問原始海報。根據我聽到其他人對錯誤的描述的經驗,「空白頁」可能意味着很多事情。 – 2010-10-29 16:11:34