以下是在Ubuntu下部署PHP项目的步骤,可选择Apache或Nginx作为Web服务器:
更新系统
sudo apt update && sudo apt upgrade
安装Web服务器
sudo apt install apache2
sudo systemctl start apache2 && sudo systemctl enable apache2
sudo apt install nginx
sudo systemctl start nginx && sudo systemctl enable nginx
安装PHP及扩展
sudo apt install php php-fpm php-mysql php-mbstring php-xml
sudo systemctl start php-fpm && sudo systemctl enable php-fpm # 仅Nginx需配置PHP-FPM
sudo nano /etc/apache2/sites-available/000-default.conf
修改DocumentRoot为项目路径(如/var/www/your_project),并确保AllowOverride All已启用。sudo a2ensite 000-default.conf
sudo systemctl restart apache2
sudo nano /etc/nginx/sites-available/default
修改root为项目路径,添加PHP处理配置:location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php-fpm.sock; # 根据PHP版本调整
}
sudo nginx -t
sudo systemctl restart nginx
/var/www/your_project),可通过scp或FTP工具操作。sudo chown -R www-data:www-data /var/www/your_project
sudo chmod -R 755 /var/www/your_project
sudo apt install mysql-server
sudo mysql_secure_installation # 设置root密码及安全选项
sudo mysql -u root -p
CREATE DATABASE your_db;
CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_db.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
.env或配置文件,填入数据库信息。在浏览器中访问http://your_server_ip/your_project,若看到项目页面或phpinfo()输出,则部署成功。
使用Let’s Encrypt免费证书:
sudo apt install certbot python3-certbot-apache # Apache
# 或 sudo apt install certbot python3-certbot-nginx # Nginx
sudo certbot --apache -d your_domain.com # 按提示操作