在CentOS環境下部署PHP可以通過多種方式,以下是使用Apache和PHP-FPM的常見步驟:
首先,更新你的系統包列表并安裝Apache和PHP-FPM:
sudo yum update -y
sudo yum install -y httpd php php-fpm
編輯PHP-FPM配置文件 /etc/php-fpm.d/www.conf
,確保監聽地址和端口正確:
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
啟動PHP-FPM服務并設置開機自啟:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
編輯Apache的主配置文件 /etc/httpd/conf/httpd.conf
或創建一個新的虛擬主機配置文件 /etc/httpd/conf.d/yourdomain.conf
:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
ErrorLog /var/log/httpd/yourdomain-error.log
CustomLog /var/log/httpd/yourdomain-access.log combined
</VirtualHost>
確保將 yourdomain.com
替換為你的實際域名,并將 /var/www/html
替換為你的網站根目錄。
啟動Apache服務并設置開機自啟:
sudo systemctl start httpd
sudo systemctl enable httpd
如果SELinux處于 enforcing 模式,可能需要配置它以允許Apache訪問PHP-FPM套接字:
sudo setsebool -P httpd_can_network_connect 1
創建一個簡單的PHP文件 /var/www/html/index.php
來測試PHP是否正常工作:
<?php
phpinfo();
?>
然后在瀏覽器中訪問 http://yourdomain.com
,你應該能看到PHP信息頁面。
如果你的服務器啟用了防火墻,確保開放HTTP(80)和HTTPS(443)端口:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
通過以上步驟,你應該能夠在CentOS環境下成功部署PHP。如果有任何問題,請檢查日志文件以獲取更多信息。