Compare commits

..

No commits in common. "eb5ed5c0ddb0865af5778a9a2a18e2812657d31d" and "9b58277945f7c734bb4fddfa5836d5467544d6fd" have entirely different histories.

33 changed files with 67 additions and 192 deletions

View file

@ -83,7 +83,7 @@ jobs:
cd x-ui/bin cd x-ui/bin
# Download dependencies # Download dependencies
Xray_URL="https://github.com/XTLS/Xray-core/releases/download/v24.11.21/" Xray_URL="https://github.com/XTLS/Xray-core/releases/download/v24.11.11/"
if [ "${{ matrix.platform }}" == "amd64" ]; then if [ "${{ matrix.platform }}" == "amd64" ]; then
wget ${Xray_URL}Xray-linux-64.zip wget ${Xray_URL}Xray-linux-64.zip
unzip Xray-linux-64.zip unzip Xray-linux-64.zip

View file

@ -27,7 +27,7 @@ case $1 in
esac esac
mkdir -p build/bin mkdir -p build/bin
cd build/bin cd build/bin
wget "https://github.com/XTLS/Xray-core/releases/download/v24.11.21/Xray-linux-${ARCH}.zip" wget "https://github.com/XTLS/Xray-core/releases/download/v24.11.11/Xray-linux-${ARCH}.zip"
unzip "Xray-linux-${ARCH}.zip" unzip "Xray-linux-${ARCH}.zip"
rm -f "Xray-linux-${ARCH}.zip" geoip.dat geosite.dat rm -f "Xray-linux-${ARCH}.zip" geoip.dat geosite.dat
mv xray "xray-linux-${FNAME}" mv xray "xray-linux-${FNAME}"

View file

@ -1,11 +1,6 @@
[English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md) [English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md)
<p align="center"> <p align="center"><a href="#"><img src="./media/3X-UI.png" alt="Image"></a></p>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/3x-ui-dark.png">
<img alt="3x-ui" src="./media/3x-ui-light.png">
</picture>
</p>
**Un Panel Web Avanzado • Construido sobre Xray Core** **Un Panel Web Avanzado • Construido sobre Xray Core**
@ -282,18 +277,14 @@ Nuestra plataforma ofrece compatibilidad con una amplia gama de arquitecturas y
## Idiomas ## Idiomas
- English (inglés) - Inglés
- Persian (persa) - Farsi
- Traditional Chinese (chino tradicional) - Chino
- Simplified Chinese (chino simplificado) - Ruso
- Japanese (japonés) - Vietnamita
- Russian (ruso) - Español
- Vietnamese (vietnamita) - Indonesio
- Spanish (español) - Ucraniano
- Indonesian (indonesio)
- Ukrainian (ucraniano)
- Turkish (turco)
- Português (Brazil) (portugués (Brasil))
## Características ## Características
@ -544,33 +535,13 @@ XUI_BIN_FOLDER="bin" XUI_DB_FOLDER="/etc/x-ui" go build main.go
## Vista previa ## Vista previa
<picture> ![1](./media/1.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/01-overview-dark.png"> ![2](./media/2.png)
<img alt="3x-ui" src="./media/01-overview-light.png"> ![3](./media/3.png)
</picture> ![4](./media/4.png)
<picture> ![5](./media/5.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/02-inbounds-dark.png"> ![6](./media/6.png)
<img alt="3x-ui" src="./media/02-inbounds-light.png"> ![7](./media/7.png)
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/03-add-inbound-dark.png">
<img alt="3x-ui" src="./media/03-add-inbound-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/04-add-client-dark.png">
<img alt="3x-ui" src="./media/04-add-client-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/05-settings-dark.png">
<img alt="3x-ui" src="./media/05-settings-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/06-configs-dark.png">
<img alt="3x-ui" src="./media/06-configs-light.png">
</picture>
<picture>
<img alt="3x-ui" src="./media/7.png">
</picture>
## Un agradecimiento especial a ## Un agradecimiento especial a

View file

@ -1,11 +1,6 @@
[English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md) [English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md)
<p align="center"> <p align="center"><a href="#"><img src="./media/3X-UI.png" alt="Image"></a></p>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/3x-ui-dark.png">
<img alt="3x-ui" src="./media/3x-ui-light.png">
</picture>
</p>
**An Advanced Web Panel • Built on Xray Core** **An Advanced Web Panel • Built on Xray Core**
@ -290,10 +285,9 @@ Our platform offers compatibility with a diverse range of architectures and devi
## Languages ## Languages
- English - English
- Persian - Farsi
- Traditional Chinese - Traditional Chinese
- Simplified Chinese - Simplified Chinese
- Japanese
- Russian - Russian
- Vietnamese - Vietnamese
- Spanish - Spanish
@ -553,33 +547,13 @@ XUI_BIN_FOLDER="bin" XUI_DB_FOLDER="/etc/x-ui" go build main.go
## Preview ## Preview
<picture> ![1](./media/1.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/01-overview-dark.png"> ![2](./media/2.png)
<img alt="3x-ui" src="./media/01-overview-light.png"> ![3](./media/3.png)
</picture> ![4](./media/4.png)
<picture> ![5](./media/5.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/02-inbounds-dark.png"> ![6](./media/6.png)
<img alt="3x-ui" src="./media/02-inbounds-light.png"> ![7](./media/7.png)
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/03-add-inbound-dark.png">
<img alt="3x-ui" src="./media/03-add-inbound-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/04-add-client-dark.png">
<img alt="3x-ui" src="./media/04-add-client-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/05-settings-dark.png">
<img alt="3x-ui" src="./media/05-settings-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/06-configs-dark.png">
<img alt="3x-ui" src="./media/06-configs-light.png">
</picture>
<picture>
<img alt="3x-ui" src="./media/7.png">
</picture>
## A Special Thanks to ## A Special Thanks to

View file

@ -1,11 +1,6 @@
[English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md) [English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md)
<p align="center"> <p align="center"><a href="#"><img src="./media/3X-UI.png" alt="Image"></a></p>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/3x-ui-dark.png">
<img alt="3x-ui" src="./media/3x-ui-light.png">
</picture>
</p>
**Продвинутая веб-панель • Построена на основе Xray Core** **Продвинутая веб-панель • Построена на основе Xray Core**
@ -288,18 +283,16 @@ location /sub {
## Языки ## Языки
- English (английский) - Английский
- Persian (персидский) - Фарси
- Traditional Chinese (традиционный китайский) - Китайский
- Simplified Chinese (упрощенный китайский) - Русский
- Japanese (японский) - Вьетнамский
- Russian (русский) - Испанский
- Vietnamese (вьетнамский) - Индонезийский
- Spanish (испанский) - Украинский
- Indonesian (индонезийский) - Турецкий
- Ukrainian (украинский) - Португальский (Бразилия)
- Turkish (турецкий)
- Português (Brazil) (португальский (Бразилия))
## Возможности ## Возможности
@ -551,33 +544,13 @@ XUI_BIN_FOLDER="bin" XUI_DB_FOLDER="/etc/x-ui" go build main.go
## Предварительный Просмотр ## Предварительный Просмотр
<picture> ![1](./media/1.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/01-overview-dark.png"> ![2](./media/2.png)
<img alt="3x-ui" src="./media/01-overview-light.png"> ![3](./media/3.png)
</picture> ![4](./media/4.png)
<picture> ![5](./media/5.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/02-inbounds-dark.png"> ![6](./media/6.png)
<img alt="3x-ui" src="./media/02-inbounds-light.png"> ![7](./media/7.png)
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/03-add-inbound-dark.png">
<img alt="3x-ui" src="./media/03-add-inbound-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/04-add-client-dark.png">
<img alt="3x-ui" src="./media/04-add-client-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/05-settings-dark.png">
<img alt="3x-ui" src="./media/05-settings-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/06-configs-dark.png">
<img alt="3x-ui" src="./media/06-configs-light.png">
</picture>
<picture>
<img alt="3x-ui" src="./media/7.png">
</picture>
## Особая благодарность ## Особая благодарность

View file

@ -1,11 +1,6 @@
[English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md) [English](/README.md) | [中文](/README.zh_CN.md) | [Español](/README.es_ES.md) | [Русский](/README.ru_RU.md)
<p align="center"> <p align="center"><a href="#"><img src="./media/3X-UI.png" alt="Image"></a></p>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/3x-ui-dark.png">
<img alt="3x-ui" src="./media/3x-ui-light.png">
</picture>
</p>
**一个更好的面板 • 基于Xray Core构建** **一个更好的面板 • 基于Xray Core构建**
@ -282,18 +277,14 @@ location /sub {
## Languages ## Languages
- English英语 - English英语
- Persian波斯语 - Farsi伊朗语
- Traditional Chinese繁体中文 - Chinese中文
- Simplified Chinese简体中文 - Russian俄语
- Japanese日语 - Vietnamese越南语
- Russian俄语 - Spanish西班牙语
- Vietnamese越南语 - Indonesian (印度尼西亚语)
- Spanish西班牙语 - Ukrainian乌克兰语
- Indonesian印尼语
- Ukrainian乌克兰语
- Turkish土耳其语
- Português (Brazil)(葡萄牙语(巴西))
## Features ## Features
@ -544,33 +535,13 @@ XUI_BIN_FOLDER="bin" XUI_DB_FOLDER="/etc/x-ui" go build main.go
## 预览 ## 预览
<picture> ![1](./media/1.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/01-overview-dark.png"> ![2](./media/2.png)
<img alt="3x-ui" src="./media/01-overview-light.png"> ![3](./media/3.png)
</picture> ![4](./media/4.png)
<picture> ![5](./media/5.png)
<source media="(prefers-color-scheme: dark)" srcset="./media/02-inbounds-dark.png"> ![6](./media/6.png)
<img alt="3x-ui" src="./media/02-inbounds-light.png"> ![7](./media/7.png)
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/03-add-inbound-dark.png">
<img alt="3x-ui" src="./media/03-add-inbound-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/04-add-client-dark.png">
<img alt="3x-ui" src="./media/04-add-client-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/05-settings-dark.png">
<img alt="3x-ui" src="./media/05-settings-light.png">
</picture>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./media/06-configs-dark.png">
<img alt="3x-ui" src="./media/06-configs-light.png">
</picture>
<picture>
<img alt="3x-ui" src="./media/7.png">
</picture>
## 特别感谢 ## 特别感谢

View file

@ -1 +1 @@
2.4.8 2.4.7

2
go.mod
View file

@ -14,7 +14,7 @@ require (
github.com/robfig/cron/v3 v3.0.1 github.com/robfig/cron/v3 v3.0.1
github.com/shirou/gopsutil/v4 v4.24.10 github.com/shirou/gopsutil/v4 v4.24.10
github.com/valyala/fasthttp v1.57.0 github.com/valyala/fasthttp v1.57.0
github.com/xtls/xray-core v1.8.25-0.20241121054707-513f18bf531e github.com/xtls/xray-core v1.8.25-0.20241120050339-6ba0dbafd710
go.uber.org/atomic v1.11.0 go.uber.org/atomic v1.11.0
golang.org/x/text v0.20.0 golang.org/x/text v0.20.0
google.golang.org/grpc v1.68.0 google.golang.org/grpc v1.68.0

4
go.sum
View file

@ -185,8 +185,8 @@ github.com/vishvananda/netns v0.0.5 h1:DfiHV+j8bA32MFM7bfEunvT8IAqQ/NzSJHtcmW5zd
github.com/vishvananda/netns v0.0.5/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= github.com/vishvananda/netns v0.0.5/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM=
github.com/xtls/reality v0.0.0-20240909153216-e26ae2305463 h1:g1Cj7d+my6k/HHxLAyxPwyX8i7FGRr6ulBDMkBzg2BM= github.com/xtls/reality v0.0.0-20240909153216-e26ae2305463 h1:g1Cj7d+my6k/HHxLAyxPwyX8i7FGRr6ulBDMkBzg2BM=
github.com/xtls/reality v0.0.0-20240909153216-e26ae2305463/go.mod h1:BjIOLmkEEtAgloAiVUcYj0Mt+YU00JARZw8AEU0IwAg= github.com/xtls/reality v0.0.0-20240909153216-e26ae2305463/go.mod h1:BjIOLmkEEtAgloAiVUcYj0Mt+YU00JARZw8AEU0IwAg=
github.com/xtls/xray-core v1.8.25-0.20241121054707-513f18bf531e h1:J5sTv0Sw+BonaI+rBh4Jkw9BfBqDjfAts81/HbIaqNg= github.com/xtls/xray-core v1.8.25-0.20241120050339-6ba0dbafd710 h1:vqW4rCXINiFU+BE2fqDc1cjeUWoRrfagrHBIrx239jU=
github.com/xtls/xray-core v1.8.25-0.20241121054707-513f18bf531e/go.mod h1:wByClH1yrH8I611sREjG62gxbP5hFtdAWYJfydQF/zI= github.com/xtls/xray-core v1.8.25-0.20241120050339-6ba0dbafd710/go.mod h1:wByClH1yrH8I611sREjG62gxbP5hFtdAWYJfydQF/zI=
github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU= github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU=
github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E= github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0= github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0=

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

BIN
media/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
media/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

BIN
media/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View file

Before

Width:  |  Height:  |  Size: 226 KiB

After

Width:  |  Height:  |  Size: 226 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

BIN
media/4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
media/5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

BIN
media/6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

View file

@ -537,7 +537,6 @@ class SplitHTTPStreamSettings extends XrayCommonClass {
cMaxLifetimeMs: 0 cMaxLifetimeMs: 0
}, },
mode = MODE_OPTION.AUTO, mode = MODE_OPTION.AUTO,
noGRPCHeader = false,
) { ) {
super(); super();
this.path = path; this.path = path;
@ -550,7 +549,6 @@ class SplitHTTPStreamSettings extends XrayCommonClass {
this.xPaddingBytes = xPaddingBytes; this.xPaddingBytes = xPaddingBytes;
this.xmux = xmux; this.xmux = xmux;
this.mode = mode; this.mode = mode;
this.noGRPCHeader = noGRPCHeader;
} }
addHeader(name, value) { addHeader(name, value) {
@ -573,7 +571,6 @@ class SplitHTTPStreamSettings extends XrayCommonClass {
json.xPaddingBytes, json.xPaddingBytes,
json.xmux, json.xmux,
json.mode, json.mode,
json.noGRPCHeader
); );
} }
@ -594,7 +591,6 @@ class SplitHTTPStreamSettings extends XrayCommonClass {
cMaxLifetimeMs: this.xmux.cMaxLifetimeMs cMaxLifetimeMs: this.xmux.cMaxLifetimeMs
}, },
mode: this.mode, mode: this.mode,
noGRPCHeader: this.noGRPCHeader
}; };
} }
} }

View file

@ -55,8 +55,5 @@
<a-form-item label="Max Lifetime (ms)"> <a-form-item label="Max Lifetime (ms)">
<a-input v-model="inbound.stream.splithttp.xmux.cMaxLifetimeMs"></a-input> <a-input v-model="inbound.stream.splithttp.xmux.cMaxLifetimeMs"></a-input>
</a-form-item> </a-form-item>
<a-form-item label="No gRPC Header">
<a-switch v-model="inbound.stream.splithttp.noGRPCHeader"></a-switch>
</a-form-item>
</a-form> </a-form>
{{end}} {{end}}

View file

@ -818,6 +818,7 @@ update_geo() {
echo -e "${green}\t0.${plain} Back to Main Menu" echo -e "${green}\t0.${plain} Back to Main Menu"
read -p "Choose an option: " choice read -p "Choose an option: " choice
systemctl stop x-ui
cd /usr/local/x-ui/bin cd /usr/local/x-ui/bin
case "$choice" in case "$choice" in
@ -825,7 +826,6 @@ update_geo() {
show_menu show_menu
;; ;;
1) 1)
systemctl stop x-ui
rm -f geoip.dat geosite.dat rm -f geoip.dat geosite.dat
wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat wget -N https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
@ -833,7 +833,6 @@ update_geo() {
restart restart
;; ;;
2) 2)
systemctl stop x-ui
rm -f geoip_IR.dat geosite_IR.dat rm -f geoip_IR.dat geosite_IR.dat
wget -O geoip_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat wget -O geoip_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geoip.dat
wget -O geosite_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat wget -O geosite_IR.dat -N https://github.com/chocolate4u/Iran-v2ray-rules/releases/latest/download/geosite.dat
@ -841,7 +840,6 @@ update_geo() {
restart restart
;; ;;
3) 3)
systemctl stop x-ui
rm -f geoip_VN.dat geosite_VN.dat rm -f geoip_VN.dat geosite_VN.dat
wget -O geoip_VN.dat -N https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geoip.dat wget -O geoip_VN.dat -N https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geoip.dat
wget -O geosite_VN.dat -N https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geosite.dat wget -O geosite_VN.dat -N https://github.com/vuong2023/vn-v2ray-rules/releases/latest/download/geosite.dat
@ -854,6 +852,7 @@ update_geo() {
;; ;;
esac esac
systemctl start x-ui
before_show_menu before_show_menu
} }

View file

@ -226,7 +226,6 @@ func (p *process) Start() (err error) {
if err != nil { if err != nil {
logger.Error("Failure in running xray-core:", err) logger.Error("Failure in running xray-core:", err)
p.exitErr = err p.exitErr = err
p.witeCrachReport(err)
} }
}() }()
@ -242,8 +241,3 @@ func (p *process) Stop() error {
} }
return p.cmd.Process.Signal(syscall.SIGTERM) return p.cmd.Process.Signal(syscall.SIGTERM)
} }
func (p *process) witeCrachReport(err error) error {
crashReportPath := config.GetBinFolderPath() + "/core_crash_" + time.Now().Format("20060102_150405") + ".log"
return os.WriteFile(crashReportPath, []byte(err.Error()), os.ModePerm)
}