1. 程式人生 > >解決WordPress 4.1總是提示更新翻譯/主題丟失、無法編輯等問題(scandir)

解決WordPress 4.1總是提示更新翻譯/主題丟失、無法編輯等問題(scandir)

這篇文章丟在草稿箱都半個月了,因為部落格轉入阿里雲備案耽擱了。直到昨天才收到工信部新增接入商的簡訊通知,所以這篇快發黴的文章也該出來晒一晒了。

正如標題所述,我在阿里雲 ESC 上搭建好 lnmp 環境,並同步部落格資料到新伺服器上後,收到了 WordPress 的翻譯更新通知,點選更新翻譯,毫無意外的更新成功!可等我一重新整理後臺的任意頁面,又會彈出翻譯更新通知!

還真見鬼了!不經意的點選了主題選項,發現看不到主題的編輯器了?這個問題,相信很多自己搭建環境的站長都遇到過,就是 PHP 下的一個 scandir 函式被禁用了!

解決辦法很簡單:

1. 編輯 php 的配置檔案:php.ini,搜尋並找到 disable_functions;

2. 刪除 disable_functions 後面的 scandir 字串,儲存 php.ini;

3. 過載或重啟 php-fpm 服務即可:service php-fpm reload 。

完成這個之後,意外的發現,成功更新翻譯之後,居然不再提示 l 了??分析了一下,卻也是在情理之中的事情:scandir()看字面意思是一個目錄掃描的函式,大概是對工作目錄下的檔案和目錄異動進行掃描分析的函式。雖然更新翻譯時確實下載並替換了最新的翻譯檔案,但是因為 scandir 函式被禁用,所以檔案的更新變動並未被系統記錄,導致後臺重新整理,再次出現了更新提示!

好了,說白了都是 scandir 函式被禁用後出現的小問題,所以當你搭建完 PHP 環境後,可以在第一時間就把這些要做的設定先設定好,避免後出現各種稀奇古怪,讓人納悶的小問題!

最後,對於此次轉入阿里雲的轉入備案,讓我對上有政策,下有對策又有了新的見解和方法。所以預告一下,接下來張戈部落格的兩篇文章就是再次整理分享一下老網站在天朝備案的對策,以及阿里雲 WAF 防火牆的使用技巧,敬請期待!