在Linux上安裝PHP 8并配置SSL支持,可以按照以下步驟進行:
首先,確保你的系統是最新的,并且安裝了必要的軟件包。你可以使用以下命令來更新系統并安裝PHP 8和相關的擴展:
sudo apt update
sudo apt upgrade
sudo apt install php8.0 libapache2-mod-ssl
啟用SSL模塊: 確保Apache的SSL模塊已經啟用。如果沒有啟用,可以使用以下命令啟用:
sudo a2enmod ssl
創建SSL證書和私鑰: 如果你還沒有SSL證書和私鑰,可以使用Let’s Encrypt免費生成。以下是生成證書的命令:
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
按照提示完成證書的生成和安裝。
配置虛擬主機:
編輯Apache的虛擬主機配置文件,通常位于/etc/apache2/sites-available/
目錄下。假設你的虛擬主機配置文件名為default-ssl.conf
,編輯該文件:
sudo nano /etc/apache2/sites-available/default-ssl.conf
找到以下部分并進行修改:
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName yourdomain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/yourdomain.com/chain.pem
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
請將yourdomain.com
替換為你的實際域名,并將DocumentRoot
指向你的網站根目錄。
啟用虛擬主機:
創建一個符號鏈接到sites-enabled
目錄以啟用虛擬主機:
sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/
測試配置并重啟Apache: 測試Apache配置是否正確:
sudo apachectl configtest
如果沒有錯誤,重啟Apache服務:
sudo systemctl restart apache2
安裝PHP SSL擴展: 確保PHP安裝了SSL相關的擴展。你可以使用以下命令來安裝:
sudo apt install php8.0-cli php8.0-fpm php8.0-mysql php8.0-gd php8.0-curl php8.0-mbstring php8.0-xml php8.0-zip
配置PHP-FPM:
編輯PHP-FPM的配置文件,通常位于/etc/php/8.0/fpm/pool.d/www.conf
,找到以下部分并進行修改:
listen = /var/run/php/php8.0-fpm.sock
重啟PHP-FPM: 重啟PHP-FPM服務:
sudo systemctl restart php8.0-fpm
配置Apache以使用PHP-FPM:
編輯Apache的配置文件,通常位于/etc/apache2/apache2.conf
,找到以下部分并進行修改:
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
</FilesMatch>
重啟Apache: 最后,重啟Apache服務:
sudo systemctl restart apache2
打開瀏覽器,訪問你的域名(例如https://yourdomain.com
),你應該能夠看到SSL證書驗證通過,并且頁面能夠正常顯示。
通過以上步驟,你已經成功在Linux上安裝了PHP 8并配置了SSL支持。