diff options
| author | Alireza Ahmadi <alireza7@gmail.com> | 2026-02-25 23:09:42 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-25 23:09:42 +0300 |
| commit | 159b85f9794576a283f981778445836dc8819a5e (patch) | |
| tree | 06ddd4e8e77fb2a3811ba0de4d099df3443fa0dc /main.go | |
| parent | 37f0880f8fd2430be3737c160710d96e88895150 (diff) | |
| parent | 3ec5b3589f3358878738b0bfc52784ee924fbcdd (diff) | |
Merge pull request #3828 from MHSanaei/restartXrayOption
[feat] restart xray-core from cli #3825
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -16,6 +16,7 @@ import ( "github.com/mhsanaei/3x-ui/v2/logger" "github.com/mhsanaei/3x-ui/v2/sub" "github.com/mhsanaei/3x-ui/v2/util/crypto" + "github.com/mhsanaei/3x-ui/v2/util/sys" "github.com/mhsanaei/3x-ui/v2/web" "github.com/mhsanaei/3x-ui/v2/web/global" "github.com/mhsanaei/3x-ui/v2/web/service" @@ -70,7 +71,7 @@ func runWebServer() { sigCh := make(chan os.Signal, 1) // Trap shutdown signals - signal.Notify(sigCh, syscall.SIGHUP, syscall.SIGTERM) + signal.Notify(sigCh, syscall.SIGHUP, syscall.SIGTERM, sys.SIGUSR1) for { sig := <-sigCh @@ -108,6 +109,12 @@ func runWebServer() { return } log.Println("Sub server restarted successfully.") + case sys.SIGUSR1: + logger.Info("Received USR1 signal, restarting xray-core...") + err := server.RestartXray() + if err != nil { + logger.Error("Failed to restart xray-core:", err) + } default: // --- FIX FOR TELEGRAM BOT CONFLICT (409) on full shutdown --- |
