我已經在這裏探討並從相關論壇中獲取了一些技巧,但仍然無法清除我的問題,所以我發佈它善意幫助我。謝謝大家。file_put_contents(filepath/file)[function.file-put-contents]:無法打開流:權限被拒絕
我有共享的Linux主機,最近他們提供了升級,我接受。不幸的是,他們聲稱我的PHP應用程序應該很好地調整到PHP 5.3版本。我的這個應用程序在早期的服務器php版本5.2中工作得很好。問題是當我嘗試註冊登錄或註銷歷史或ANY這樣的文件寫入時,文件權限被拒絕錯誤。我強調了以下代碼,因爲它是遇到示例的第一個錯誤。這是我的示例代碼。
我特別使用file_put_contents和file_read_contents。以下是我的示例代碼。
// define('DATA_PATH_MEMB', dirname(__FILE__) ."/../docs/vendor/"."data/_memdata/");
// above constant is an include file
function updateLogins() {
$user = $_SESSION['thisuserName'];
$filejsonread = DATA_PATH_MEMB.$user.".dat";
$filejsonwrite = DATA_PATH_MEMB.$user.".dat";
$updateDataArr = json_decode(file_get_contents($filejsonread),true);
$timenow = array("datetimestamp" => date("d-m-Y h:i"));
array_push($updateDataArr["useracess"][0]["history"]["logins"], $timenow);
array_push($updateDataArr["useracess"][0]["history"]["logouts"], $timenow);
file_put_contents($filejsonwrite, json_encode($updateDataArr), LOCK_EX);
}
我獲得以下錯誤指向file_put_contents作爲
file_put_contents(/家/ MYDOMAIN /的public_html /包括/../文檔/ GBO /數據/ _memdata/someusr.dat)功能。文件提出,內容]:未能打開流:權限被拒絕
我問他們,如果我的用戶帳戶,該文件被分配到具有寫權限組的一部分。我的目錄是755,我的文件是644,並且在以前的服務器中,我的應用程序正常工作。如果不能寫入任何文件,我不知道該怎麼辦。
我想這
echo exec('whomai'); // it displays nobody
我是一個程序員沒有管理員。我應該問他們什麼或糾正自己。
謝謝你的幫助。我真的很感激。這樣我的應用程序即時創建和更新文件。一旦他們承擔責任,我會復出並接受你的回答。 – user2362464 2013-05-09 02:03:26
不幸的是,我的服務器人不接受,但我和你一起去。 – user2362464 2013-05-09 11:12:25
因此,我是否正確回答了您的問題......因爲如果此答案不正確,則完全可以。但是,從我作爲系統管理員和程序員的經驗來看。我可以說你的問題必須是我解釋的問題。順便說一句。感謝您接受我的回答。 – doNotCheckMyBlog 2013-05-09 11:47:54