部署v2board面板

前言

V2Board(Way to board)可以对以下协议进行用户管理

Shadowsocks
Vmess
Trojan

官方使用手册:https://docs.v2board.com/

使用aaPanel手动部署

aaPanel是宝塔(bt.cn)的国际版本

1.配置aaPanel

你需要在 aaPanel 选择你的系统获得安装方式。这里以 CentOS 7+ 作为系统环境进行安装。

请务必使用 CentOS 7+ 安装aaPanel,其他系统可能会有未知问题。

dd centos7.9
项目:https://github.com/hiCasper/Shell

wget --no-check-certificate -O AutoReinstall.sh https://git.io/AutoReinstall.sh && bash AutoReinstall.sh

Using DHCP mode.
Please select an OS:
  1) CentOS 7.9 (DD Image)
  2) CentOS 7.6 (DD Image,ServerSpeeder Avaliable)
  3) CentOS 6
  4) Debian 9
  5) Debian 10
  6) Ubuntu 16.04
  7) Ubuntu 18.04
  8) Custom image
  0) Exit
Your option: 1

选1,等个10分钟左右,依据系统性能而定。性能强悍5分钟足够,性能差的肯能要久一点。
账号:root,密码:Pwd@CentOS
ssh登录服务器后,修改密码:passwd root

// 最新脚本可以在aaPanel官网获取

yum install -y wget && wget -O install.sh http://www.aapanel.com/script/install_6.0_en.sh && bash install.sh

安装完成后我们登陆 aaPanel 进行环境的安装。

选择使用LNMP的环境安装方式勾选如下信息

☑️ Nginx 1.17
☑️ MySQL 5.6
☑️ PHP 7.4

选择 Fast 快速编译后进行安装。

2.安装Redis、fileinfo

aaPanel 面板 > App Store > 找到PHP 7.4点击Setting > Install extentions > redis,fileinfo 进行安装。

3.解除被禁止的函数

aaPanel 面板 > App Store > 找到PHP 7.4点击Setting > Disabled functions 将 putenv proc_open pcntl_alarm pcntl_signal 从列表中删除。

4.添加站点

aaPanel 面板 > Website > Add site。

在 Domain 填入你指向服务器的域名
在 Database 选择MySQL
在 PHP Verison 选择PHP-74

5.安装V2Board

通过SSH登录到服务器后访问站点路径如:/www/wwwroot/你的站点域名。

以下命令都需要在站点目录进行执行。

chattr -i .user.ini
rm -rf .htaccess 404.html index.html .user.ini

执行命令从 Github 克隆到当前目录。

git clone https://github.com/v2board/v2board.git ./

若报错:fatal: 目标路径 '.' 已经存在,并且不是一个空目录。
则进入宝塔面板后台,找到网站目录(/www/wwwroot/你的站点域名),把里面的文件全部删除。
再重新执行上面的命令即可。

执行命令安装依赖包以及V2board

sh init.sh

根据提示完成安装

6.配置站点目录及伪静态

添加完成后编辑添加的站点 > Site directory > Running directory 选择 /public 保存。

添加完成后编辑添加的站点 > URL rewrite 填入伪静态信息。

location /downloads {
}

location / {  
    try_files $uri $uri/ /index.php$is_args$query_string;  
}

location ~ .*\.(js|css)?$
{
    expires      1h;
    error_log off;
    access_log /dev/null; 
}

7.配置定时任务

aaPanel 面板 > Cron。

在 Type of Task 选择 Shell Script
在 Name of Task 填写 v2board
在 Period 选择 N Minutes 1 Minute
在 Script content 填写 php /www/wwwroot/路径/artisan schedule:run

根据上述信息添加每1分钟执行一次的定时任务。

此时即可打开网页查看v2board面板了,https://yourdomain/admin.若报错line24,等待5分钟。

8.启动队列服务(用于发邮件,记录流量等)

V2board的系统强依赖队列服务,正常使用V2Board必须启动队列服务。下面以aaPanel中supervisor服务来守护队列服务作为演示。

aaPanel 面板 > App Store > Tools

找到Supervisor进行安装,安装完成后点击设置 > Add Daemon按照如下填写

在 Name 填写 V2board
在 Run User 选择 www
在 Run Dir 选择 站点目录 在 Start Command 填写 php artisan horizon 在 Processes 填写 1

填写后点击Confirm添加即可运行。

常见问题

Q:500错误
A:检查站点根目录权限,递归755,保证目录有可写文件的权限,也有可能是Redis扩展没有安装或者Redis没有按照造成的。你可以通过查看storage/logs下的日志来排查错误或者开启debug模式、站点设置中关闭防跨站。
Q:line24错误
A:等待5分钟再试,若还不行,检查下2,3,4,6步骤是正确执行。