mirror of
https://github.com/cedar2025/Xboard.git
synced 2025-01-22 18:48:14 -05:00
Compare commits
6 Commits
3ed6b764ea
...
99af5b80ab
Author | SHA1 | Date | |
---|---|---|---|
|
99af5b80ab | ||
|
bc0c8a93a0 | ||
|
9ae6fbaaa7 | ||
|
fd4dc9064f | ||
|
6d46ecb757 | ||
|
3b9cc99526 |
66
.github/ISSUE_TEMPLATE/bug-report----问题反馈.md
vendored
66
.github/ISSUE_TEMPLATE/bug-report----问题反馈.md
vendored
@ -1,43 +1,39 @@
|
||||
---
|
||||
name: Bug report | 问题反馈
|
||||
about: Tell us what problems you have encountered
|
||||
title: "[BUG]"
|
||||
labels: ''
|
||||
name: 🐛 问题反馈 | Bug Report
|
||||
about: 提交使用过程中遇到的问题 | Report an issue
|
||||
title: "问题:"
|
||||
labels: '🐛 bug'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
🙇♂️🙇♂️🙇♂️注意:XrayR等非XBoard问题请前往项目方提问
|
||||
🙇♂️🙇♂️🙇♂️Note: XrayR and other non-XBoard issues please go to the project side to ask questions
|
||||
<!-- 🔴 请注意:XrayR等非XBoard问题请前往相应项目提问 -->
|
||||
<!-- 🔴 Note: For XrayR and other non-XBoard issues, please report to their respective projects -->
|
||||
|
||||
> ⚠️ 请务必按照模板填写完整信息,没有详细描述的issue可能会被忽略或关闭
|
||||
> ⚠️ Please follow the template to provide complete information, issues without detailed description may be ignored or closed
|
||||
|
||||
**基本信息 | Basic Info**
|
||||
```yaml
|
||||
XBoard版本 | Version:
|
||||
部署方式 | Deployment: [Docker/手动部署]
|
||||
PHP版本 | Version:
|
||||
数据库 | Database:
|
||||
```
|
||||
|
||||
**问题描述 | Description**
|
||||
<!-- 简要描述你遇到的问题 -->
|
||||
|
||||
|
||||
The XBoard version number you are using
|
||||
当前使用的XBoard版本号(git commit id)
|
||||
--------
|
||||
**复现步骤 | Steps**
|
||||
<!-- 如何复现这个问题? -->
|
||||
1.
|
||||
2.
|
||||
|
||||
Would you like to deploy using Docker?
|
||||
你的部署方式(是否为Docker)
|
||||
--------
|
||||
**相关截图 | Screenshots**
|
||||
<!-- 拖拽图片到这里(请注意隐藏敏感信息)-->
|
||||
|
||||
|
||||
Please briefly describe the issue you encountered (preferably with reproducible steps).
|
||||
简单描述你遇到的问题(最好带上复现步骤)
|
||||
--------
|
||||
|
||||
|
||||
|
||||
Screenshot of the reported error(Please do desensitization)
|
||||
报告错误的截图(请做脱敏处理)
|
||||
--------
|
||||
|
||||
|
||||
|
||||
Screenshot of the reported error(Please do desensitization)
|
||||
报告错误的截图(请做脱敏处理)
|
||||
--------
|
||||
|
||||
|
||||
|
||||
Run the php artisan log:export 7 command to export log files (where 7 represents logs for the last 7 days).
|
||||
运行`php artisan log:export 7` 命令导出的日志文件(其中7为最近7天的日志)。
|
||||
--------
|
||||
**日志信息 | Logs**
|
||||
<!-- 运行命令:php artisan log:export 7 -->
|
||||
```log
|
||||
// 粘贴日志内容到这里
|
||||
```
|
||||
|
31
.github/ISSUE_TEMPLATE/feature-request---功能请求.md
vendored
31
.github/ISSUE_TEMPLATE/feature-request---功能请求.md
vendored
@ -1,11 +1,28 @@
|
||||
---
|
||||
name: Feature request | 功能请求
|
||||
about: Tell us what you need
|
||||
title: "[Feature request]"
|
||||
labels: ''
|
||||
name: ✨ 功能请求 | Feature Request
|
||||
about: 提交新功能建议或改进意见 | Suggest an idea
|
||||
title: "建议:"
|
||||
labels: '✨ enhancement'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
Please describe in detail the problems or needs you have encountered.
|
||||
请详细描述你遇到的问题或需求。
|
||||
> ⚠️ 请务必按照模板详细描述你的需求,没有详细描述的issue可能会被忽略或关闭
|
||||
> ⚠️ Please follow the template to describe your request in detail, issues without detailed description may be ignored or closed
|
||||
|
||||
**需求描述 | Description**
|
||||
<!-- 描述你希望添加的功能或改进建议 -->
|
||||
|
||||
|
||||
**使用场景 | Use Case**
|
||||
<!-- 描述这个功能会在什么场景下使用,解决什么问题 -->
|
||||
|
||||
|
||||
**功能建议 | Suggestion**
|
||||
<!-- 你期望这个功能是什么样的?可以描述一下具体实现方式 -->
|
||||
```yaml
|
||||
功能形式 | Type: [新功能/功能优化/界面改进]
|
||||
预期效果 | Expected:
|
||||
```
|
||||
|
||||
**补充说明 | Additional**
|
||||
<!-- 其他补充说明或者参考示例 -->
|
||||
|
88
README.md
88
README.md
@ -1,32 +1,36 @@
|
||||
# 关于Xboard
|
||||
Xboard New是基于Xboard二次开发,重写后台管理并优化系统架构的**面板,提升可维护性
|
||||
# Xboard New
|
||||
|
||||
# 免责声明
|
||||
本项目只是本人个人学习开发并维护,本人不保证任何可用性,也不对使用本软件造成的任何后果负责。
|
||||
[English](README.md) | [中文](README_CN.md)
|
||||
|
||||
# Xboard New 特点
|
||||
基于Xboard 二次开发,增加了以下特性
|
||||
- 升级Laravel11
|
||||
- 增加Octane支持
|
||||
- 使用React + Shadcn UI + TailwindCSS重构后台管理
|
||||
- 使用Vue3 + TypeScript + NaiveUI + Unocss + Pinia重构用户前端
|
||||
- 使用Docker Compose作为容器化部署工具
|
||||
- 使用Docker作为容器化部署工具
|
||||
- 重构主题管理,增加主题上传,并且只暴露激活主题
|
||||
- 使用Octane Cache作为设置的缓存
|
||||
- 优化系统架构,提升可维护性
|
||||
# **系统架构**
|
||||
[![Telegram Channel](https://img.shields.io/badge/Telegram-Channel-blue)](https://t.me/XboardOfficial)
|
||||
|
||||
- PHP8.2+
|
||||
## About Xboard
|
||||
Xboard New is a panel system based on Xboard's secondary development, featuring a rewritten admin interface and optimized system architecture to improve maintainability.
|
||||
|
||||
## Disclaimer
|
||||
This project is personally developed and maintained. I do not guarantee any availability or take responsibility for any consequences of using this software.
|
||||
|
||||
## Features
|
||||
- Upgraded to Laravel 11
|
||||
- Added Octane support
|
||||
- Rebuilt admin interface using React + Shadcn UI + TailwindCSS
|
||||
- Rebuilt user frontend using Vue3 + TypeScript + NaiveUI + Unocss + Pinia
|
||||
- Using Docker Compose as containerization deployment tool
|
||||
- Using Docker as containerization tool
|
||||
- Restructured theme management with theme upload support and active theme exposure
|
||||
- Using Octane Cache for settings caching
|
||||
- Optimized system architecture for better maintainability
|
||||
|
||||
## System Requirements
|
||||
- PHP 8.2+
|
||||
- Composer
|
||||
- MySQL5.7+
|
||||
- MySQL 5.7+
|
||||
- Redis
|
||||
- Laravel
|
||||
- Octane
|
||||
|
||||
## 快速体验
|
||||
|
||||
使用以下命令快速部署并体验 Xboard(基于 Docker + SQLite):
|
||||
## Quick Start
|
||||
Deploy and experience Xboard quickly using the following commands (based on Docker + SQLite):
|
||||
|
||||
```bash
|
||||
git clone -b compose-new --depth 1 https://github.com/cedar2025/Xboard && \
|
||||
@ -38,31 +42,31 @@ docker compose run -it --rm \
|
||||
web php artisan xboard:install && \
|
||||
docker compose up -d
|
||||
```
|
||||
安装完成后访问 http://服务器IP:7001
|
||||
After installation, visit http://SERVER_IP:7001
|
||||
|
||||
> 提示:安装过程中会显示管理员账号密码,请务必保存。
|
||||
> Note: Admin credentials will be displayed during installation, make sure to save them.
|
||||
|
||||
## 页面展示
|
||||
![示例图片](./docs/images/dashboard.png)
|
||||
## Preview
|
||||
![Dashboard Preview](./docs/images/dashboard.png)
|
||||
|
||||
## 安装 / 更新 / 回滚
|
||||
你可以点击查看下列方式的**安装、更新**步骤
|
||||
- [1panel 部署](./docs/1panel安装指南.md)
|
||||
- [Docker Compose 纯命令行快速部署](./docs/docker-compose安装指南.md)
|
||||
- [aapanel + Docker Compose (推荐)](./docs/aapanel+docker安装指南.md)
|
||||
- [aapanel 部署](./docs/aapanel安装指南.md)
|
||||
### 从其他版本迁移
|
||||
#### 数据库迁移
|
||||
**根据你的版本查看对应的迁移指南进行迁移**
|
||||
- v2board dev 23/10/27的版本 [点击跳转迁移指南](./docs/v2b_dev迁移指南.md)
|
||||
- v2board 1.7.4 [点击跳转迁移指南](./docs/v2b_1.7.4迁移指南.md)
|
||||
- v2board 1.7.3 [点击跳转迁移指南](./docs/v2b_1.7.3迁移指南.md)
|
||||
- v2board wyx2685 [点击跳转迁移指南](./docs/v2b_wyx2685迁移指南.md)
|
||||
## Installation / Update / Rollback
|
||||
Click to view installation and update steps for:
|
||||
- [1panel Deployment](./docs/1panel安装指南.md)
|
||||
- [Docker Compose Quick Deployment](./docs/docker-compose安装指南.md)
|
||||
- [aapanel + Docker Compose (Recommended)](./docs/aapanel+docker安装指南.md)
|
||||
- [aapanel Deployment](./docs/aapanel安装指南.md)
|
||||
|
||||
## Migration from Other Versions
|
||||
### Database Migration
|
||||
**Check the corresponding migration guide based on your version:**
|
||||
- v2board dev 23/10/27 version [Migration Guide](./docs/v2b_dev迁移指南.md)
|
||||
- v2board 1.7.4 [Migration Guide](./docs/v2b_1.7.4迁移指南.md)
|
||||
- v2board 1.7.3 [Migration Guide](./docs/v2b_1.7.3迁移指南.md)
|
||||
- v2board wyx2685 [Migration Guide](./docs/v2b_wyx2685迁移指南.md)
|
||||
|
||||
### 注意
|
||||
> 修改后台路径需要重启才能生效
|
||||
```
|
||||
## Note
|
||||
> Modifying admin path requires restart to take effect:
|
||||
```bash
|
||||
docker compose restart
|
||||
```
|
||||
> 如果是是aapanel安装则需要重启 webman守护进程
|
||||
> For aapanel installations, restart the webman daemon process
|
72
README_CN.md
Normal file
72
README_CN.md
Normal file
@ -0,0 +1,72 @@
|
||||
# Xboard New
|
||||
|
||||
[English](README.md) | [中文](README_CN.md)
|
||||
|
||||
[![Telegram 频道](https://img.shields.io/badge/Telegram-频道-blue)](https://t.me/XboardOfficial)
|
||||
|
||||
# 关于Xboard
|
||||
Xboard New是基于Xboard二次开发,重写后台管理并优化系统架构的面板,提升可维护性。
|
||||
|
||||
# 免责声明
|
||||
本项目只是本人个人学习开发并维护,本人不保证任何可用性,也不对使用本软件造成的任何后果负责。
|
||||
|
||||
# Xboard New 特点
|
||||
- 升级Laravel11
|
||||
- 增加Octane支持
|
||||
- 使用React + Shadcn UI + TailwindCSS重构后台管理
|
||||
- 使用Vue3 + TypeScript + NaiveUI + Unocss + Pinia重构用户前端
|
||||
- 使用Docker Compose作为容器化部署工具
|
||||
- 使用Docker作为容器化部署工具
|
||||
- 重构主题管理,增加主题上传,并且只暴露激活主题
|
||||
- 使用Octane Cache作为设置的缓存
|
||||
- 优化系统架构,提升可维护性
|
||||
|
||||
# 系统要求
|
||||
- PHP8.2+
|
||||
- Composer
|
||||
- MySQL5.7+
|
||||
- Redis
|
||||
- Laravel
|
||||
- Octane
|
||||
|
||||
## 快速体验
|
||||
使用以下命令快速部署并体验 Xboard(基于 Docker + SQLite):
|
||||
|
||||
```bash
|
||||
git clone -b compose-new --depth 1 https://github.com/cedar2025/Xboard && \
|
||||
cd Xboard && \
|
||||
docker compose run -it --rm \
|
||||
-e ENABLE_SQLITE=true \
|
||||
-e ENABLE_REDIS=true \
|
||||
-e ADMIN_ACCOUNT=admin@demo.com \
|
||||
web php artisan xboard:install && \
|
||||
docker compose up -d
|
||||
```
|
||||
安装完成后访问 http://服务器IP:7001
|
||||
|
||||
> 提示:安装过程中会显示管理员账号密码,请务必保存。
|
||||
|
||||
## 页面展示
|
||||
![示例图片](./docs/images/dashboard.png)
|
||||
|
||||
## 安装 / 更新 / 回滚
|
||||
你可以点击查看下列方式的安装、更新步骤:
|
||||
- [1panel 部署](./docs/1panel安装指南.md)
|
||||
- [Docker Compose 纯命令行快速部署](./docs/docker-compose安装指南.md)
|
||||
- [aapanel + Docker Compose (推荐)](./docs/aapanel+docker安装指南.md)
|
||||
- [aapanel 部署](./docs/aapanel安装指南.md)
|
||||
|
||||
### 从其他版本迁移
|
||||
#### 数据库迁移
|
||||
**根据你的版本查看对应的迁移指南进行迁移**
|
||||
- v2board dev 23/10/27的版本 [点击跳转迁移指南](./docs/v2b_dev迁移指南.md)
|
||||
- v2board 1.7.4 [点击跳转迁移指南](./docs/v2b_1.7.4迁移指南.md)
|
||||
- v2board 1.7.3 [点击跳转迁移指南](./docs/v2b_1.7.3迁移指南.md)
|
||||
- v2board wyx2685 [点击跳转迁移指南](./docs/v2b_wyx2685迁移指南.md)
|
||||
|
||||
### 注意
|
||||
> 修改后台路径需要重启才能生效:
|
||||
```bash
|
||||
docker compose restart
|
||||
```
|
||||
> 如果是aapanel安装则需要重启 webman守护进程
|
@ -96,8 +96,11 @@ class Shadowrocket implements ProtocolInterface
|
||||
|
||||
switch (data_get($protocol_settings, 'network')) {
|
||||
case 'tcp':
|
||||
if (data_get($protocol_settings, 'network_settings.header.type', 'none') !== 'none') {
|
||||
$config['obfs'] = data_get($protocol_settings, 'network_settings.header.type');
|
||||
$config['path'] = \Arr::ra(data_get($protocol_settings, 'network_settings.header.request.path', ['/']));
|
||||
$config['path'] = \Arr::random(data_get($protocol_settings, 'network_settings.header.request.path', ['/']));
|
||||
$config['obfsParam'] = \Arr::random(data_get($protocol_settings, 'network_settings.header.request.headers.Host', ['www.example.com']));
|
||||
}
|
||||
break;
|
||||
case 'ws':
|
||||
$config['obfs'] = "websocket";
|
||||
@ -161,13 +164,18 @@ class Shadowrocket implements ProtocolInterface
|
||||
}
|
||||
switch (data_get($protocol_settings, 'network')) {
|
||||
case 'tcp':
|
||||
if (data_get($protocol_settings, 'network_settings.header.type', 'none') !== 'none') {
|
||||
$config['obfs'] = data_get($protocol_settings, 'network_settings.header.type');
|
||||
$config['path'] = \Arr::random(data_get($protocol_settings, 'network_settings.header.request.path', ['/']));
|
||||
$config['obfsParam'] = \Arr::random(data_get($protocol_settings, 'network_settings.header.request.headers.Host', ['/']));
|
||||
$config['obfsParam'] = \Arr::random(data_get($protocol_settings, 'network_settings.header.request.headers.Host', ['www.example.com']));
|
||||
}
|
||||
break;
|
||||
case 'ws':
|
||||
$config['obfs'] = "websocket";
|
||||
if (data_get($protocol_settings, 'network_settings.path')) {
|
||||
$config['path'] = data_get($protocol_settings, 'network_settings.path');
|
||||
}
|
||||
|
||||
if ($host = data_get($protocol_settings, 'network_settings.headers.Host')) {
|
||||
$config['obfsParam'] = $host;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user