V2Board 部署完整教程(适用于 Ubuntu 服务器)
本教程适用于在 Ubuntu 系统中,从 0 搭建 V2Board 修改版,涵盖环境安装、数据库配置、源码部署、SSL 证书签发等关键步骤。
📦 第一步:安装 Nginx、Certbot、MariaDB、Redis
apt -y install nginx python3-certbot-nginx mariadb-server redis-server
- nginx:Web 服务器
- certbot:自动化签发 SSL 证书
- mariadb:MySQL 替代数据库
- redis:缓存服务
🐘 第二步:安装 PHP 8.3
添加 PHP 源
sudo apt update
sudo apt -y install curl apt-transport-https ca-certificates lsb-release
curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
安装 PHP 8.3 及扩展
sudo apt update
sudo apt -y install php8.3-common php8.3-cli php8.3-fpm php8.3-gd php8.3-mysql php8.3-mbstring \
php8.3-curl php8.3-xml php8.3-xmlrpc php8.3-zip php8.3-intl php8.3-bz2 php8.3-bcmath php8.3-redis
🧰 第三步:安装 Composer
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
🛢️ 第四步:配置 MariaDB
初始化数据库
mysql_secure_installation
创建数据库及用户
CREATE DATABASE v2board CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON v2board.* TO v2board@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
📂 第五步:获取 V2Board 源码
cd /var/www
git clone https://github.com/wyx2685/v2board.git
cd v2board/
安装依赖
sudo -u user composer install
安装 V2Board
php artisan v2board:install
修改权限
chmod -R 755 v2board/
chown -R www-data:www-data v2board/
⏰ 第六步:添加计划任务
crontab -u www-data -e
添加以下内容:
* * * * * php /var/www/v2board/artisan schedule:run >> /dev/null 2>&1
📡 第七步:配置 Laravel 队列服务
nano /etc/systemd/system/horizon.service
添加以下内容:
[Unit]
Description=Laravel Horizon Queue Manager
After=network.target
[Service]
user=www-data
ExecStart=/usr/bin/php /var/www/v2board/artisan horizon
Restart=always
[Install]
WantedBy=multi-user.target
启用服务并设置开机启动:
systemctl enable --now horizon.service
🌐 第八步:配置 Nginx
nano /etc/nginx/sites-available/v2board
写入以下内容(注意修改 PHP 版本为 8.3):
server {
listen 80;
server_name v2board.example.com;
root /var/www/v2board/public;
index index.php;
client_max_body_size 0;
location / {
try_files $uri $uri/ /index.php$is_args$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
}
}
启用站点配置:
ln -s /etc/nginx/sites-available/v2board /etc/nginx/sites-enabled/v2board
systemctl reload nginx
🔐 第九步:签发 HTTPS 证书
使用 Certbot 自动签发
certbot --nginx
使用 Cloudflare API 签发泛域名
1. 安装插件
sudo apt install python3-certbot-dns-cloudflare
2. 创建 Token 文件
sudo nano /etc/letsencrypt/cloudflare.ini
写入以下内容:
dns_cloudflare_api_token = your_api_token
设置权限:
sudo chmod 600 /etc/letsencrypt/cloudflare.ini
3. 申请泛域名证书
sudo certbot certonly \
--dns-cloudflare \
--dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini \
-d "*.v2board.example.com" -d v2board.example.com
✅ 教程完成
至此,V2Board 已成功部署并支持 SSL 访问。
© 版权声明
THE END
暂无评论内容