安裝Ondřej Surý的PHP 7 repository
apt-get -y install apt-transport-https lsb-release ca-certificates
curl -ssL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
apt-get update
安裝PHP 7.3.0
apt-get install php7.3 php7.3-cli php7.3-common php7.3-curl php7.3-mbstring php7.3-mysql php7.3-xml php7.3-fpm php7.3-dev php7.3-zip
因為用到PHP-FPM, 所以要有php7.3-fpm
設定檔案會在/etc/php/7.3/目錄之下, PHP-FPM則是/etc/php/7.3/fpm/
開啟OPcache
nano /etc/php/7.3/fpm/php.ini
尋找"[opcache]"章節, 將opcache打開
opcache.enable=1
php.ini後面也加上載入opcache模組
zend_extension=opcache.so
關於OPcache的詳細設定, 可以參考: https://gywbd.github.io/posts/2016/1/best-config-for-zend-opcache.html
安裝Nginx
apt-get install nginx
修改網站根目錄與PHP-FPM的Unix Socket路徑
nano /etc/nginx/sites-available/default
清除內容, 或是修改成你需要的預設網站
server {
listen 80;
root /var/www/html;
index index.php index.html index.htm;
server_name _;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
重新啟動PHP-FPM與Nginx
service php7.3-fpm restart
service nginx restart
我在網站目錄放個測試程式, 顯示phpinfo()內容, 例如以下畫面: