CentOS配置PHP域名完整指南
環(huán)境準(zhǔn)備與PHP安裝
執(zhí)行以下命令安裝PHP及相關(guān)擴展:
sudo yum install epel-release -y
sudo yum install php php-mysqlnd php-fpm -y
systemctl enable php-fpm && systemctl start php-fpm
Web服務(wù)器配置方案
Apache方案
編輯虛擬主機配置文件:
sudo vi /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
??ServerName example.com
??DocumentRoot /var/www/html/example
??<Directory /var/www/html/example>
????AllowOverride All
??</Directory>
</VirtualHost>
Nginx方案
創(chuàng)建服務(wù)器區(qū)塊配置文件:
sudo vi /etc/nginx/conf.d/example.com.conf
server {
??listen 80;
??server_name example.com;
??root /var/www/html/example;
??index index.php index.html;
??location ~ .php$ {
????fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
????include fastcgi_params;
??}
}
域名解析與綁定
完成DNS解析設(shè)置后,創(chuàng)建項目目錄并設(shè)置權(quán)限:
sudo mkdir -p /var/www/html/example
sudo chown -R apache:apache /var/www/html/example # Apache用戶
sudo chown -R nginx:nginx /var/www/html/example # Nginx用戶
安全增強配置
通過Certbot安裝SSL證書:
sudo yum install certbot python3-certbot-nginx -y # Nginx版本
sudo certbot --nginx -d example.com -d www.example.com
配置驗證流程
創(chuàng)建測試文件并驗證PHP解析:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/example/info.php
curl -I http://example.com/info.php
防火墻與SELinux設(shè)置
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
setsebool -P httpd_can_network_connect 1 # Apache系統(tǒng)
setsebool -P httpd_can_network_connect_db 1