網站搬家後記 – 外掛衝突&強制加密

2,315次閱讀
尚無留言

共计 2435 个字符,预计需要花费 7 分钟才能阅读完成。

正常將資料庫和網站還原後應該就完成整個搬家流程,不過這是在沒有安裝太多外掛前提之下,我自己本身安裝 Compress JPEG & PNG images 和 Crayon Syntax Highlighter,其餘的都是之前 siteground 提供的我也就繼續沿用了,不過搬家後卻發生一個令人傻眼的結果 ……

我一打開我的網站在頂端出現如附圖的錯誤訊息

網站搬家後記 - 外掛衝突 & 強制加密

錯誤訊息如

Warning: is_dir(): open_basedir restriction in effect. File(/) is not within the allowed path(s):
(/home2/yszhangt:/home/yszhangt:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:
/tmp:/opt/alt/php52/usr/share:/opt/alt/php53/usr/share:/opt/alt/php54/usr/share:/opt/alt/php55/usr/share:
/opt/alt/php56/usr/share:/opt/alt/php70/usr/share:/opt/alt/php71/usr/share) in /home/yszhangt/public_html/blog/wp-includes/functions.php on line 1618
Warning: is_dir(): open_basedir restriction in effect. File(/home/risen988/public_html/blog/wp-content/uploads/crayon-syntax-highlighter/fonts/) is not within the allowed path(s):
(/home2/yszhangt:/home/yszhangt:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:
/tmp:/opt/alt/php52/usr/share:/opt/alt/php53/usr/share:/opt/alt/php54/usr/share:/opt/alt/php55/usr/share:
/opt/alt/php56/usr/share:/opt/alt/php70/usr/share:/opt/alt/php71/usr/share) in /home/yszhangt/public_html/blog/wp-content/plugins/crayon-syntax-highlighter/crayon_resource.class.php on line 90

可以看出發生錯誤的應該是 crayon-syntax-highlighter 插件所導致,果不其然我將他關閉後就正常了!但這治標不致本的方式我當然不能接受,因此我開始想辦法解決 直接查詢「wordpress basedir Warning: is_dir():」

得到一個結果 使用 debug_backtrace()做 PHP 调试  這個博主也是搬家遇到類似的問題 都是同樣的插件報錯,關鍵在於沒有找到對應的路徑所以才會出錯!因此接下來就是要解決路徑的問題,那關鍵是路徑在哪決定?資料庫還是檔案?

針對檔案的部份可以抓下來的網站檔案查詢錯誤內容的路徑,發現查不到,那顯然這資料就是從資料庫來了,而且路徑就是我前主機中的網站根目錄。

我在 stackoverflow 上有看到類似 is_dir() 錯誤的相關 討論串,文中提到在資料庫中 選擇 wp_options 表中查詢 option_name 欄位值為 upload_path 果不其然找到對應的路徑進行修改即可。

不過我是直接展開整張 wp_options 表然後在框框裡面改值 如附圖 改成目前主機的路徑即可

網站搬家後記 - 外掛衝突 & 強制加密

最後是設定網站加密 但這部份由於 Sugarhosts 在 Cpanel 界面上就有提供一鍵加密 就不多加贅述,詳細可以參考 這篇文章

接下來會提到網站加密的小坑,因為預設我以為只要套用憑證就好,但實際上還有細節被我忽略了 …

  • 1 2
正文完
 0
評論(尚無留言)