下面按最常见的 Debian + PHP 项目(如 Laravel / ThinkPHP / 原生 PHP)场景,给你一套从零部署流程,你可以按需取用。
sudo apt update
sudo apt upgrade -y
以 PHP 8.2 为例(Debian 12 默认):
sudo apt install -y php php-cli php-fpm \
php-mysql php-pdo php-mbstring php-xml \
php-curl php-zip php-gd php-intl
查看版本:
php -v
sudo apt install -y nginx
sudo systemctl enable nginx
sudo systemctl start nginx
sudo mkdir -p /var/www/myproject
sudo cp -r your_project/* /var/www/myproject
设置权限:
sudo chown -R www-data:www-data /var/www/myproject
sudo chmod -R 755 /var/www/myproject
新建配置文件:
sudo nano /etc/nginx/sites-available/myproject
示例(Laravel / ThinkPHP):
server {
listen 80;
server_name yourdomain.com;
root /var/www/myproject/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
sudo apt install -y mariadb-server
sudo mysql_secure_installation
创建数据库:
CREATE DATABASE myproject;
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON myproject.* TO 'user'@'localhost';
FLUSH PRIVILEGES;
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer -v
安装依赖:
cd /var/www/myproject
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
runtime 目录可写public/index.phpsudo apt install -y ufw
sudo ufw allow 80
sudo ufw allow 22
sudo ufw enable
浏览器访问:
http://服务器IP
或绑定域名后访问。
✅ PHP-FPM sock 路径要匹配
✅ 目录权限必须是 www-data
✅ .env 不能外网可访问
✅ 生产环境关闭 display_errors
如果你用的是:
告诉我,我可以给你更精确的部署方案。