在CentOS上配置Apache2與PHP-FPM,可以按照以下步驟進行:
首先,確保你的系統是最新的,并安裝Apache和PHP-FPM所需的軟件包。
sudo yum update -y
sudo yum install -y httpd mod_fcgid php-fpm php-mysqlnd
啟動Apache服務并設置開機自啟。
sudo systemctl start httpd
sudo systemctl enable httpd
編輯PHP-FPM的配置文件 /etc/php-fpm.d/www.conf
,確保以下配置正確:
; Unix user/group of processes
user = apache
group = apache
; Listen on a TCP socket or Unix socket
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
; Set listen(2) backlog
listen.backlog = 65535
; Set permissions for socket
chmod = 0660
chown = apache:apache
; Security Limitations
php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i
php_admin_flag[safe_mode] = off
php_admin_value[memory_limit] = 32M
編輯Apache的主配置文件 /etc/httpd/conf/httpd.conf
或創建一個新的虛擬主機配置文件(例如 /etc/httpd/conf.d/myapp.conf
),并添加以下內容:
<VirtualHost *:80>
ServerName myapp.example.com
DocumentRoot /var/www/html/myapp
<Directory /var/www/html/myapp>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
</FilesMatch>
# Optional: Enable compression
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript
</VirtualHost>
啟動PHP-FPM服務并設置開機自啟。
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
確保所有服務都已正確啟動,并且沒有錯誤日志。
sudo systemctl status httpd
sudo systemctl status php-fpm
查看Apache和PHP-FPM的日志文件以檢查是否有任何錯誤:
/var/log/httpd/error_log
/var/log/php-fpm/error.log
創建一個簡單的PHP文件(例如 /var/www/html/myapp/index.php
)來測試配置:
<?php
phpinfo();
?>
訪問 http://myapp.example.com/index.php
,你應該能看到PHP信息頁面。
通過以上步驟,你應該能夠在CentOS上成功配置Apache2與PHP-FPM。如果有任何問題,請檢查日志文件以獲取更多信息。