在CentOS上部署PHP项目通常涉及以下几个步骤:
安装Web服务器: 通常使用Apache或Nginx作为Web服务器。以下是安装Apache的命令:
sudo yum install httpd
安装完成后,启动Apache服务并设置开机自启:
sudo systemctl start httpd
sudo systemctl enable httpd
安装PHP: 使用yum安装PHP及其常用模块:
sudo yum install php php-mysqlnd php-pdo php-gd php-mbstring php-xml
如果你的项目需要其他PHP扩展,请根据需要安装。
配置PHP:
编辑PHP配置文件/etc/php.ini
,根据项目需求进行配置。例如,你可能需要调整内存限制、上传文件大小限制等。
部署项目文件:
将你的PHP项目文件上传到服务器上的一个目录中,通常是/var/www/html
或其子目录。你可以使用FTP、SCP或其他文件传输方法。
配置Web服务器: 根据你使用的Web服务器,配置虚拟主机以指向你的项目目录。
Apache:
创建一个新的虚拟主机配置文件,例如/etc/httpd/conf.d/yourproject.conf
,并添加以下内容:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/html/yourproject
<Directory /var/www/html/yourproject>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/yourproject-error.log
CustomLog /var/log/httpd/yourproject-access.log combined
</VirtualHost>
然后重启Apache服务:
sudo systemctl restart httpd
Nginx:
创建一个新的虚拟主机配置文件,例如/etc/nginx/conf.d/yourproject.conf
,并添加以下内容:
server {
listen 80;
server_name yourdomain.com;
root /var/www/html/yourproject;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_log /var/log/nginx/yourproject-error.log;
access_log /var/log/nginx/yourproject-access.log;
}
然后重启Nginx服务:
sudo systemctl restart nginx
数据库配置: 如果你的项目需要数据库,确保已经安装并配置了数据库服务器(如MySQL或PostgreSQL)。然后,在PHP项目中配置数据库连接信息。
权限设置:
确保Web服务器用户(通常是apache
或nginx
)对项目目录有适当的读写权限。
sudo chown -R apache:apache /var/www/html/yourproject
sudo chmod -R 755 /var/www/html/yourproject
SSL证书(可选): 如果你需要HTTPS,可以使用Let’s Encrypt免费获取SSL证书,并配置Web服务器以使用它。
通过以上步骤,你应该能够在CentOS上成功部署你的PHP项目。