温馨提示×

debian lnmp如何添加站点

小樊
34
2026-09-10 18:35:28
栏目: 智能运维

在 Debian 上搭建了 LNMP(Linux + Nginx + MySQL/MariaDB + PHP) 后,添加一个新站点通常包括以下几个步骤:


一、准备站点目录

sudo mkdir -p /var/www/example.com/public
sudo chown -R www-data:www-data /var/www/example.com
sudo chmod -R 755 /var/www/example.com

example.com 替换为你的域名


二、创建 Nginx 站点配置文件

sudo nano /etc/nginx/sites-available/example.com

写入以下内容(基础 PHP 站点):

server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/example.com/public;
    index index.php index.html index.htm;

    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;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }
}

PHP 版本按实际修改,如 php8.1-fpm.sock


三、启用站点

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

四、测试并重载 Nginx

sudo nginx -t
sudo systemctl reload nginx

五、创建测试页面(可选)

echo "<?php phpinfo(); ?>" | sudo tee /var/www/example.com/public/index.php

浏览器访问:

http://example.com

六、配置数据库(可选)

mysql -u root -p
CREATE DATABASE example_db;
CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

七、HTTPS(推荐)

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com

八、常见问题

  • 403 Forbidden:检查目录权限和 index 文件
  • 502 Bad Gateway:PHP-FPM 未运行或 socket 路径错误
  • 站点不生效:确认 sites-enabled 已软链接

如果你是用 LNMP 一键安装包(如 lnmp.org),方式和原生 Debian 略有不同,我也可以单独给你对应步骤。

0