$ ls crystal_folder

令人憂鬱的CentOS 7上PHP Remi源擴充元件安裝&安裝完擴充元件到底要不要重啟Nginx

令人憂鬱的CentOS 7上PHP擴充元件安裝

最近有個舊專案突然一直故障

另外就是發現擴充元件有懸缺,但不知道是不是舊專案寫法的原因

使用

# 已經綁定Remi源
sudo yum install php-soap
# 這樣安裝完會被寫入php.ini並啟用,可用php -m查看

這樣程式會吃不到

使用

sudo yum install php72-php-soap # 直接下載Remi源指定版本的擴充元件
# 這樣安裝完不會自動被啟用

程式可以讀到

但是其他php.ini中有啟用的擴充元件像是PDO就失效了... 唉,到底要怎麼解決呢...

(而且有時候兩種安裝方式檔名不一樣...)

後來我解決了,我把選用php-pdo安裝的擴充元件移除,改安裝php72-php-pdo又能吃到了

會不會是當初php-fpm安裝方式不佳......CentOS 7太老舊,網路上的"教學"大部分只有shell,有時也沒解說背後的原理,唉...應該要再多多了解php在Linux的運作模式

會不會當初用EPEL更好:(


安裝完擴充元件到底要不要重啟Nginx

應該是不用,只需要sudo systemctl restart php版本號-php-fpm.service[^1]

Apache的運作方式不同,有異動就得整個重啟

[^1]:但我現在懷疑這種安裝方式有問題?還是說php-fpm是動態載入不用跟php.ini有關才能這樣搞? 好多疑惑

#php #stillConfused