【工作手記】Directadmin PHP Selector 相關 + custombuild 502 問題解決方式

Directadmin PHP Selector 相關

PHP版本更替,舊版本最好從可選項目中除去。但DA的設計只是標識當前使用的PHP_Selector序號(1~4),沒使用名稱,所以一旦修改可支援版本和序號,很可能會直接造成某個舊版本的網頁停止運作。解決方式:

  1. 確認PHP_Selector的排列,1~4分別是哪個版本。記錄下要替換的版本。
    例如 PHP_Selector1 是 php74-pfm 版本,PHP_Selector2 則是 php80-pfm 版本。
  2. 用CLI查找哪個網站使用著哪個PHP_Selector序號。
    查找指令:
    grep -P 'php[\d]' /usr/local/directadmin/data/users/*/domains/*.conf

    返回例子:
    /usr/local/directadmin/data/users/nap/domains/abc.com.conf:php1_select=1
    /usr/local/directadmin/data/users/nap/domains/abc.com.conf:php2_select=0
    /usr/local/directadmin/data/users/tzv/domains/dom.org.conf:php1_select=2
    /usr/local/directadmin/data/users/tzv/domains/dom.org.conf:php2_select=0

  3. 調整 php1_select 的指向數字就行了。
    這裏第一行標識這個 abc.com 網站使用 PHP_Selector1 的設置版本,這例子就是 php74-pfm了。另一個 dom.org 則是用著 php80-pfm。

custombuild 502 問題

作 ./build update 時,跳出 curl 502 錯誤。

花了超過一小時查找,最後獲得的原因是 DirectAdmin 預設更新網址 files-ca.directadmin.com的 SSL 證書竟然過期了。。。(無言 + 狂翻白眼)

解決方式:

  1. 找出 custombuild 的設置檔。我這的位置是
    /usr/local/directadmin/custombuild/options.conf
  2. 找到 files-ca.directadmin.com 的設置位置,用符號 # remark 掉。
    # downloadserver=files-ca.directadmin.com
  3. 把原來的設置行複製,替換掉 files.directadmin.com 。
    downloadserver=files.directadmin.com
  4. 重做一次 ./build update 即可。