--- GA: G-7GF24SD6DM --- # OpenLiteSpeed×Wordpress<br/>LSPHP手把手編譯手冊 ## 前言 最早在建立OpenLiteSpeed×Wordpress架構時候,就有跟著網上教程操作過一次。 但因沒有我自己的紀錄,翻起來要一段時間。 現在來寫寫自己的筆記,以後就自己抄自己的就好😁。 本文章採用 [CC BY-NC-ND 4.0 DEED](https://creativecommons.org/licenses/by-nc-nd/4.0/deed) ,請按照規章採姓名標示、非商業性、禁止改作推廣共享。 ## 前置作業 1. 備好 Litespeed 網站伺服器。 2. 取得PHP源碼待會進行編譯作業。 3. 沒了,不然你也沒PHP可以後端作業阿。 ### Part 1. OpenLiteSpeed安裝 筆者使用OS為Debian12,本次採用APT倉庫安裝。 ```shell= # uname -a Linux *** 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1(2024-04-11) x86_64 GNU/Linux ``` ```shell= # apt install openlitespeed ``` 待其安裝完成即可,會注意到它連帶了個lsphp7.4,為網站伺服器WebAdmin控制面板使用。 接著裝了下其他伺服器使用的後端PHP,此處採用安裝lsphp83版本。 筆者習慣使用Aptitude套件管理介面,這邊附上截圖提供我安裝了哪些套件。 ![image](https://hackmd.io/_uploads/HJPqHyRbC.png) 此外,剛透過APT倉庫裝好的版本可能較舊,先在還未建置前趕緊更新。 ```shell= # cd /usr/local/lsws/admin/misc # ./lsup.sh lsup.sh Version: v2.84-04/12/2024. download URL is https://openlitespeed.org/packages/openlitespeed-1.8.1-x86_64-linux.tgz ... All files are updated and services is started. ``` [Upgrading/Downgrading OpenLiteSpeed – OpenLiteSpeed](https://openlitespeed.org/kb/how-to-upgrade-openlitespeed/) 筆者建議更新後可以再重啟並確認伺服器狀況 ```shell= # systemctl restart lsws # systemctl status lsws ... active (running) ... ``` 完成後便可登入WebAdmin控制介面,位址在`https://127.0.0.1:7080`,HTTPS是自簽章證書,有跳提示是正常現象。 預設管理員帳號與隨機密碼在`/usr/local/lsws/adminpasswd`。 ```shell= # cat /usr/local/lsws/adminpasswd WebAdmin user/password is admin/MjYwMGZi ``` ### Part 2. OpenLiteSpeed設置 ##### I. 虛擬主機設置:PHP ![image](https://hackmd.io/_uploads/rJsCebRWC.png) 截圖提供WebAdmin介面位置。 剛剛已有安裝`lsphp*`各式套件,請在命令填入該lsphp檔案位址如`/usr/local/lsws/lsphp83/bin/lsphp`即可。 地址欄則是臨時暫存的產生執行緒位址,基本照填如`uds://tmp/lshttpd/lsphp83.sock`。 最後要按右上角LSWS PID旁的軟重啟lsws,即可套用設定。 ##### II. 檢查網頁狀況。 預設位址: `http://127.0.0.1:8088` ![image](https://hackmd.io/_uploads/BJVDMb0WC.png) 瀏覽器能瀏覽此頁面代表成功一半了。 檢查PHP,下面就有看到`TEST PHP`,點按後會到`phpinfo()`頁,可以查看相關套件函式庫狀況。 ![image](https://hackmd.io/_uploads/HJ56G-CWC.png) `Ctrl+F`網頁搜尋:mysql,可以看到有相關欄位代表正常啟用。 ![image](https://hackmd.io/_uploads/BJ-27b0bC.png) 搜尋:PDO,這邊用了mysql和sqlite。 ![image](https://hackmd.io/_uploads/r1407bCbC.png) ### Part 3. MariaDB / MySQL [MySQL在2008年被收購為Oracle旗下產品](https://zh.wikipedia.org/zh-tw/MySQL),MariaDB為其創始者另外的開源分支,但本文仍以MySQL稱呼。 因筆者已有在此示範機安裝過MySQL,便不再重做,附上截圖簡單知道裝哪裡就好。 ```shell= # apt install mariadb-server ``` ![image](https://hackmd.io/_uploads/ryjKSWRbA.png) ### Part 4. phpmyadmin phpmyadmin老牌資料庫Web-Based管理介面,有了PHP和MySQL便可開始安裝。 官網:[https://www.phpmyadmin.net/](https://www.phpmyadmin.net/) 下載後,先準備phpmyadmin的環境。 筆者習慣phpmyadmin與public網頁分開虛擬主機,所以要再到openlitespeed去設定。 ![image](https://hackmd.io/_uploads/rJNp8-AbC.png) vhost內設定,就看自己喜好了。 ![image](https://hackmd.io/_uploads/rJNmvZRZR.png) 如果配置文件不存在,系統可以一鍵生成。 ![image](https://hackmd.io/_uploads/ByyIPZRWR.png) ![image](https://hackmd.io/_uploads/rJrHn-CZ0.png) 監聽器要開給虛擬主機連入,此處簡單設。 ![image](https://hackmd.io/_uploads/SyxxuWA-A.png) 開了監聽器,記得要去映射才能連的到。 `*` 域名表示任何域名皆可連入,但我不擔心,因為我前期就設定不會將這個虛擬主機暴露在外了。 ![image](https://hackmd.io/_uploads/r14huW0-A.png) 完成設定後就可以再次軟重啟套用。 可以做個簡單試著連入,本次示例:`http://127.0.0.1:33306` 有404頁,可以讓主機連到即可,畢竟還沒放入phpmyadmin。 解壓縮,放入該虛擬主機資料夾。 記得,要將phpmyadmin所有權改lsws瀏覽使用者,不然會404錯誤。 ```shell= # chown nobody:nogroup /usr/local/lsws/phpmyadmin/* ``` --- ### 延伸閱讀一、如何更新Openlitespeed? :::info 🔗 歡迎參閱原文內容:[Updates with lsup | LiteSpeed Web Server | LiteSpeed Documentation](https://docs.litespeedtech.com/lsws/updates/) ::: 理論上應該不難,簡單執行個SH腳本檔就能自動化完成所有更新動作 ~~(沒意外的話)~~。 `cd /usr/local/lsws/admin/misc`  進入到放有很多個sh檔案的資料夾,都是OpenLiteSpeed可能用到的腳本。 以Root權限:`# ./lsup.sh` 進行更新腳本。 稍微說明下腳本執行過程可能會做什麼事: ![image](https://hackmd.io/_uploads/B1vlZhP6R.png) 前面幫你載回來更新的壓縮檔,後開始檢查設定些東西。 ![image](https://hackmd.io/_uploads/BkwVWhDTA.png) 這邊看起來幫你做了Admin的SSL證書。 ![image](https://hackmd.io/_uploads/BJ6YbhDaC.png) 告訴你應該做的些帳號與群組,也說了未修改你的管理者密碼。 大概也就這樣完成了更新程序。 最後一行不曉得發生了什麼差錯。但進到WebAdmin介面,看到版本有更新我就沒啥問題了。