PHP opcache緩存導致的問題

自從開啓了opcache以來,開發的時候一直存在一些緩存問題,

後來又開啓了redis及其他的,開始沒在意,每次修改文件刷新半天,界面都沒變化

等10-60s左右刷新才能正常顯示最新修改。

今天把文件修改了更新到服務器才發現,服務器上的頁面實時更新變化,

一頓猛操作排查,才發現是opcache導致的。

opcache.validate_timestamps=60
如果啓用,那麼 OPcache 會每隔 opcache.revalidate_freq 設定的秒數 檢查腳本是否更新。 
如果禁用此選項,你必須使用 opcache_reset() 或者 opcache_invalidate() 函數來手動重置 OPcache,
也可以 通過重啓 Web 服務器來使文件系統更改生效。
#提示:在opcache使用軟連接的情況下,會存在opcache沒有被清除的情況.可以使用重啓fastcgi來解決這個問題.

 

; 一定時間內檢查文件的修改時間, 這裏設置檢查的時間週期, 默認爲 2, 單位爲秒
;檢查腳本時間戳是否有更新的週期,以秒爲單位。設置爲 0 會導致針對每個請求, OPcache 都會檢查腳本更新。
opcache.revalidate_freq=60

然後註釋掉;opcache.revalidate_freq=60終於正常了

 

資料:

https://www.cnblogs.com/lishanlei/p/9548884.html

https://blog.csdn.net/why_2012_gogo/article/details/51134674

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章