发布于2026-07-16 阅读(0)
扫一扫,手机访问
在Linux上部署PHP项目,听起来步骤不少,但核心流程其实很清晰。从安装环境到配置服务,再到上传文件、设置权限、连接数据库,每一步做到位,项目就能跑得稳。下面把整个流程拆开细讲,方便你跟着操作。

首先,系统里得装上三样东西:Web服务器(Apache或Nginx二选一)、PHP(连带常用扩展,比如MySQLi、OpenSSL)、数据库(MySQL或PostgreSQL)。具体怎么装?往下看。
sudo apt update
sudo apt install apache2
sudo apt install php libapache2-mod-php php-mysql
sudo apt update
sudo apt install nginx
sudo apt install php-fpm php-mysql
装好之后,得让服务器知道你的项目往哪放、怎么处理PHP请求。不同服务器配置略有差异。
编辑Apache默认站点配置文件(通常路径是/etc/apache2/sites-a vailable/000-default.conf),把DocumentRoot和部分改成下面这样:
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
然后启用站点并重启服务:
sudo a2ensite 000-default.conf
sudo systemctl restart apache2
编辑Nginx默认配置文件(通常位于/etc/nginx/sites-a vailable/default),设置根目录和PHP处理规则:
server {
listen 80;
server_name your_domain_or_ip;
root /var/www/html;
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/php7.4-fpm.sock; # 根据你的PHP版本调整
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
保存后重启Nginx:
sudo systemctl restart nginx
用FTP、SFTP或者SCP,把PHP项目的所有文件传到服务器上你配置好的根目录(比如/var/www/html)。这一步没什么技术难度,注意别漏了隐藏文件就行。
权限设置不当,项目跑起来会报各种奇奇怪怪的错误。标准做法:把目录所有权交给Web服务器用户(通常是www-data),文件设为644,目录设为755。
sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type f -exec chmod 644 {} \;
sudo find /var/www/html -type d -exec chmod 755 {} \;
项目离不开数据库。确保MySQL或PostgreSQL服务已经在运行,然后创建数据库和用户。
CREATE DATABASE your_database_name;
CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_username'@'localhost';
FLUSH PRIVILEGES;
CREATE DATABASE your_database_name;
CREATE USER your_username WITH ENCRYPTED PASSWORD 'your_password';
GRANT ALL PRIVILEGES ON DATABASE your_database_name TO your_username;
根据项目框架的要求,修改.env文件或其它配置文件,把数据库的连接信息填进去,还有像APP_URL、缓存路径等设置也要核对一遍。
确认Apache或Nginx以及PHP-FPM(如果用了Nginx)都已经启动并正常运行:
sudo systemctl status apache2 # 如果使用Apache
sudo systemctl status nginx # 如果使用Nginx
sudo systemctl status php7.4-fpm # 根据你的PHP版本调整
如果状态显示active (running),说明服务正常。否则查看日志排查问题。
部署只是开始,维护才是常态。定期检查错误日志(Apache的/var/log/apache2/error.log,Nginx的/var/log/nginx/error.log),能帮你提前发现潜在问题。同时别忘了定期备份数据库和项目文件——数据丢了,哭都来不及。
跟着这套流程走,在Linux上部署PHP项目基本不会踩大坑。当然,实际环境中可能还会遇到PHP版本兼容、扩展缺失、防火墙规则等问题,但掌握了核心步骤,排查起来就有方向了。
上一篇:如何通过ps命令查找僵尸进程
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8