我一直在一個網站上工作了大約一個月,我最近嘗試了一些東西,現在我真的堅持剛剛彈出的緩存權限問題向上。我讀過關於計算器的一切在這個問題上,例如:cakephp SplFileInfo :: openFile myapp_cake_core_cake_console未能打開流:權限被拒絕
Cakephp Permission denied Fileengine.php
包括錯誤/非錯誤:http://cakephp.lighthouseapp.com/projects/42648/tickets/2172
但我仍然無法阻止出現這種錯誤在插件使用HTML->腳本助手加載JavaScript資源期間。
警告: SplFileInfo ::中openFile(在/ var/WWW/2tli /應用程序的/ tmp /緩存/永久/ myapp_cake_core_cake_console_): 未能打開流:權限在 在/ var/WWW/2tli/lib中否認/Cake/Cache/Engine/FileEngine.php上線314
調用堆棧: 0.0009 352948 1. {主}()/var/www/2tli/app/webroot/index.php:0
0.0045 446644 2. include('/var/www/2tli/lib/Cake/bootstrap.php') /var/www/2tli/app/webroot/index.php:92 0.0327 1174292 3. Configure::bootstrap() /var/www/2tli/lib/Cake/bootstrap.php:171 0.0427 1406772 4. include('/var/www/2tli/app/Config/core.php') /var/www/2tli/lib/Cake/Core/Configure.php:78 0.0494 1512200 5. Cache::config() /var/www/2tli/app/Config/core.php:336 0.0495 1512940 6. Cache::_buildEngine() /var/www/2tli/lib/Cake/Cache/Cache.php:136 0.0562 1635708 7. FileEngine->gc() /var/www/2tli/lib/Cake/Cache/Cache.php:169 0.0562 1635796 8. FileEngine->clear() /var/www/2tli/lib/Cake/Cache/Engine/FileEngine.php:102 0.0617 1637516 9. FileEngine->_setKey() /var/www/2tli/lib/Cake/Cache/Engine/FileEngine.php:236 0.0627 1657060 10. trigger_error() /var/www/2tli/lib/Cake/Cache/Engine/FileEngine.php:314
我是運行PHP 5.3.10。 Cake 2.3.7。我在bootstrap.php中的以下內容:
// Setup a 'default' cache configuration for use in the application.
Cache::config('default', array('engine' => 'File', 'mask' => 0666));
而且在core.php中:
/**
* Configure the cache used for general framework caching. Path information,
* object listings, and translation cache files are stored with this configuration.
*/
Cache::config('_cake_core_', array(
'engine' => $engine,
'prefix' => $prefix . 'cake_core_',
'path' => CACHE . 'persistent' . DS,
'serialize' => ($engine === 'File'),
'duration' => $duration,
'mask'=>0666));
Cache::config('_cake_model_', array(
'engine' => $engine,
'prefix' => $prefix.'cake_model_',
'path' => CACHE . 'models' . DS,
'serialize' => ($engine === 'File'),
'duration' => $duration,
'mask' => 0666
));
我插件也有一個bootstrap.php中:
Cache::config('UserPlugin', array(
'engine' => 'File',
'duration'=> '+3 months',
'path' => CACHE,
'prefix' => 'UserPlugin_',
'mask'=>0666
));
我已經把所有的應用程序/ tmp文件和文件夾作爲我的apache擁有者www-data並設置爲777(我也嘗試過666來匹配掩碼)。
我已經刪除並重建了app/tmp目錄。
有沒有人有任何想法?
編輯:我不知道該怎麼做,但我注意到註釋掉Html->腳本助手有時不會刪除錯誤(並且原始html仍顯示腳本包含) 。所以我盯着刪除緩存並將緩存持續時間設置爲1秒。只是偶爾它的行爲如預期,因爲html似乎被緩存。我發現始終如一地按照預期工作(無論是在註釋還是註釋行中)時,唯一的方法是刪除緩存並重新啓動瀏覽器(firefox)。然後,無論何時在重新啓動Firefox後再次輸入html->腳本,Cake都可以在沒有權限錯誤的情況下運行。我相信問題會回來,因爲我似乎無法找到根本原因。
你在app/tmp/cache目錄中包含了模型,視圖和持久子文件夾嗎? –
@ joshua.paling是的www數據和777.我真的被困在這一個... – user6972
你的服務器上是否有剩餘空間?你可以通過普通的FTP手動在這些目錄中創建文件嗎? –