当前位置: 首页 > news >正文

NPM 与 XUI 共存!Nginx Proxy Manager 搭配 X-UI 实现 Vless+WS+TLS 教程!

之前分享过搭建可以与宝塔共存的一个 “魔法” 服务器状态监控应用 ——xui,支持 Vmess+WS+TLS。

最近 Docker 视频出的比较多,前阵子又出现了宝塔国内版存在隐私泄露的问题,很多小伙伴其实都不用宝塔了,那么,在我们现在装了 Nginx Proxy Manager(NPM)的环境下,80 和 443 端口都转由 NPM 来管理了,可以让 XUI 和 NPM 共存吗?如何用 NPM 来反代 XUI 呢?今天我们就来折腾一下!

1. 搭建环境

  • 服务器:腾讯香港轻量应用服务器 24 元 / 月 VPS 一台展示用的服务器是甲骨文圣何塞永久免费服务器,本期搭建用的是 Vultr 的服务器,按小时计费,可随时销毁(最好是选 非大陆的服务器)(腾讯轻量购买链接)移动、联通用户建议可以用 Racknerd 试试
  • 系统:Debian 10(DD 脚本 非必需 DD 用原来的系统也 OK)
  • 域名一枚,并做好解析到服务器上(域名购买、域名解析 视频教程)
  • 安装好 Docker、Docker-compose(相关脚本)
  • 安装好 Nginx Proxy Manager(相关教程)

2. 搭建视频

YouTube:https://youtu.be/aYC4BTzbw8c

3. 搭建方式

3.1 服务器初始设置

服务器初始设置,参考

新买了一台服务器 “必须” 要做的 6 件小事

【Docker 系列】不用宝塔面板,小白一样可以玩转 VPS 服务器!

3.2 下载 xui

新版(支持功能更多):

BASH

bash <(curl -Ls https://raw.githubusercontent.com/FranzKafkaYu/x-ui/master/install.sh)

GitHub 地址:GitHub - FranzKafkaYu/x-ui: Lightweight Xray panel with multi-protocol and multi-user on the same port,supports English language and Telegram bot. Easy to use and easy to manage.

旧版:

BASH

bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)

根据提示设置端口信息用户名密码

3.3 登陆 xui 面板并配置

image-20220519173838476

切换最新版本:

image-20220519173900021

修改面板路径:

image-20220519173916580

记得保存配置

添加入站列表:

image-20220519174016372

如果配置,只需要修改 4 个地方:

image-20220519174141370

点击添加,之后点击重启面板

image-20220519174237766

3.4 NPM 配置

2022-12-15 更新简单方法

无需手动进入目录修改,只需要在面版即可操作!

选择任意一个 NPM 代理上,分别在下面两个位置填入下面两个部分内容:

image-20221215182225687

代替了旧方法中的:

NGINX

location ^~ /fuckgfw {              #fuckgfw换成你前面设置的面板的url根路径proxy_pass http://158.101.3.171:54331/fuckgfw;  # IP填服务器IP,这边不能填127.0.0.1,因为是在容器里,54331换成你xui面板的端口proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

image-20221215182244204

NGINX

location /plogger {                 # plogger填你前面设置的ws的路径proxy_redirect off;proxy_pass http://158.101.3.171:13997;    # IP填服务器IP,这边不能填127.0.0.1,因为是在容器里,13997换成你入站规则那边的IPproxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $http_host;proxy_read_timeout 300s;# Show realip in v2ray access.logproxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

保存即可!


以下为旧方法,不建议采用

登陆服务器,来到 NPM 的安装路径下(这边假设大家都是用【Docker 系列】一个反向代理神器 ——Nginx Proxy Manager 这篇文章的方法搭建的):

BASH

cd /root/data/docker_data/npm

查看当前文件:

BASH

ls -al

image-20220519174804818

我们的文件都在 data 目录下,一层一层找,找到我们的 Nginx 配置文件。

BASH

cd data/nginx/proxy_host

image-20220519175123930

可以看到两个文件(如果你 NPM 反代多的话,可能有很多个)

这边比较讨厌,是数字命名的,其实我们随便选一个也行。

image-20220519175343318

image-20220519175542303


以上为旧方法,不建议采用。

在上述位置加入以下内容:

NGINX

location ^~ /fuckgfw {              #fuckgfw换成你前面设置的面板的url根路径proxy_pass http://158.101.3.171:54331/fuckgfw;  # IP填服务器IP,这边不能填127.0.0.1,因为是在容器里,54331换成你xui面板的端口proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /plogger {                 # plogger填你前面设置的ws的路径proxy_redirect off;proxy_pass http://158.101.3.171:13997;    # IP填服务器IP,这边不能填127.0.0.1,因为是在容器里,13997换成你入站规则那边的IPproxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $http_host;proxy_read_timeout 300s;# Show realip in v2ray access.logproxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

保存后,重启一下 NPM。

BASH

cd /root/data/docker_data/npm    # 来到docker-compose.yml所在的文件夹下docker-compose restart  # 重启

4. 客户端连接

以小火煎为例子,其他客户端类似:

点击打开二维码:

image-20220519180233466

image-20220519180412072

image-20220519180510046

image-20220519180554086

完整配置参考:

image-20220519180630504

image-20220519180644375

启动节点:

image-20220519180728131

浏览器输入 https://ip.skk.moe/

image-20220519180831650

搞定!

5. 注意事项(重要)

由于我们是直接修改的配置文件,所以,在反代的这个站点,不用轻易在 NPM 后台面板上修改原来的配置(比如打开,然后点确定),这样会破坏掉我们这边写的 Nginx 配置文件,导致节点无法正常使用。

相关文章:

NPM 与 XUI 共存!Nginx Proxy Manager 搭配 X-UI 实现 Vless+WS+TLS 教程!

之前分享过搭建可以与宝塔共存的一个 “魔法” 服务器状态监控应用 ——xui&#xff0c;支持 VmessWSTLS。 最近 Docker 视频出的比较多&#xff0c;前阵子又出现了宝塔国内版存在隐私泄露的问题&#xff0c;很多小伙伴其实都不用宝塔了&#xff0c;那么&#xff0c;在我们现在…...

【网络奇遇记】那年我与计算机网络的浅相知

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;网络奇遇记、数据结构 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 一. 计算机网络的定义1.1 计算机早期的一个最简单的定义1.2 现阶段计算机网络的一个较好的定义 二. …...

LeetCode26.删除有序数组中的重复项(双指针法)

LeetCode26.删除有序数组中的重复项 1.问题描述2.解题思路3.代码 1.问题描述 给你一个 非严格递增排列 的数组 nums &#xff0c;请你** 原地** 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然…...

原型网络Prototypical Network的python代码逐行解释,新手小白也可学会!!-----系列8

文章目录 前言一、原始代码二、对每一行代码的解释&#xff1a;总结 前言 这是该系列原型网络的最后一段代码及其详细解释&#xff0c;感谢各位的阅读&#xff01; 一、原始代码 if __name__ __main__:##载入数据labels_trainData, labels_testData load_data() # labels_…...

黑马点评回顾 redis实现共享session

文章目录 传统session缺点整体访问流程代码实现生成验证码登录 问题具体思路 传统session缺点 传统单体项目一般是把session存入tomcat&#xff0c;但是每个tomcat中都有一份属于自己的session,假设用户第一次访问第一台tomcat&#xff0c;并且把自己的信息存放到第一台服务器…...

Redis篇---第八篇

系列文章目录 文章目录 系列文章目录前言一、说说 Redis 哈希槽的概念?二、Redis 常见性能问题和解决方案有哪些?三、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?前言 前些天发现了一个巨牛的人工智能学习网站…...

Unity使用Visual Studio Code 调试

Unity 使用Visual Studio Code 调试C# PackageManager安装Visual Studio EditorVisual Studio Code安装Unity 插件修改Unity配置调试 PackageManager安装Visual Studio Editor 打开 Window->PackageManger卸载 Visual Studio Code Editor &#xff0c;这个已经被官方废弃安…...

【Linux】进程替换|exec系列函数

文章目录 一、看一看单进程版的进程替换二、进程替换的原理三、多进程版——验证各种程序替换接口exec系列函数execlexeclpexecvexecvp tipsexecleexecve 四、总结 一、看一看单进程版的进程替换 #include<stdio.h> #include<unistd.h> #include<stdlib.h>i…...

Java编程技巧:将图片导出成pdf文件

目录 一、pom依赖二、代码三、测试链接 一、pom依赖 <!-- pdf插件 start --> <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.3</version> </dependency> <dependency…...

二项分布和泊松分布

一、二项分布 1.1 n重伯努利试验 若是二项分布&#xff0c;则必是n重伯努利试验概型。即&#xff1a;每次试验只有两种结果 与 &#xff0c;且在每次试验中A发生的概率相等&#xff0c;即P(A)p&#xff0c;将这种试验独立重复n次&#xff0c;则称这种试验为n重伯努利试验&#…...

【飞控调试】DJIF450机架+Pixhawk6c mini+v1.13.3固件+好盈Platinium 40A电调无人机调试

1 背景 由于使用了一种新的航电设备组合&#xff0c;在调试无人机起飞的时候遇到了之前没有遇到的问题。之前用的飞控&#xff08;Pixhawk 6c&#xff09;和电调&#xff08;Hobbywing X-Rotor 40A&#xff09;&#xff0c;在QGC里按默认参数配置来基本就能平稳飞行&#xff0…...

Android studio配置Flutter开发环境报错问题解决

博主前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住也分享一下给大家 &#x1f449;点击跳转到教程 报错问题截图 报错原因已经给出&#xff1a; You need Java 11 or higher to build your app with this version of G…...

2023.11.18 -自用hadoop高可用环境搭建命令

启动hadoop高可用环境 # 1.先恢复快照到高可用环境 # 2.三台服务器启动zookeeper服务 [rootnode1 ~]# zkServer.sh start [rootnode2 ~]# zkServer.sh start [rootnode3 ~]# zkServer.sh start 查看服务状态: [rootnode]# zkServer.sh status 关闭zk服务的命令是: [rootnode]# …...

【Linux】常用系统工作命令

一、Linux文档目录结构 在Linux系统中&#xff0c;目录、字符设备、套接字、硬盘、光驱、打印机等都被抽象成文件形式&#xff0c;“Linux系统中一切都是文件”。Linux系统中的一切文件都是从"根"目录&#xff08;/&#xff09;开始的&#xff0c;并按照文件系统层次…...

深入理解网络协议:通信世界的基石

&#x1f482; 个人网站:【 海拥】【神级代码资源网站】【办公神器】&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交流的小伙伴&#xff0c;请点击【全栈技术交流群】 在当今数字化时代&#xff0c;网络协议是连接世…...

PL/SQL编程

一、Oracle常用函数 concat&#xff1a;用于连接两个字符串。 CONCAT(Oraok, .com) -- Result: Oraok.com ceil&#xff1a;小数点向上取整。 secect ceil(7.3) from dual --Result: 8 dual表是oracle系统为计算设计的一张临时表 select sysdate as 系统日期 from dual…...

Prompt提示词——什么是CRISPE框架?QCIPSPE框架?

框架介绍 【CRISPE】框架 是由 Matt Nigh 提出并发布的提示词书写框架&#xff0c;共由五部分组成。 这个框架&#xff08;CRISPE&#xff09;主要包括五个部分&#xff0c;用于指导用户向ChatGPT提问。首先&#xff0c;通过设定ChatGPT的角色&#xff08;Capacity and Role&…...

Nginx的核心配置文件

Nginx的核心配置文件 学习Nginx首先需要对它的核心配置文件有一定的认识&#xff0c;这个文件位于Nginx的安装目录/usr/local/nginx/conf目录下&#xff0c;名字为nginx.conf 详细配置&#xff0c;可以参考resources目录下的<<nginx配置中文详解.conf>> Nginx的核…...

Java,集合框架,关于Collection接口(子接口List和Set)

目录 数组储存多个数据方面的特点&#xff1a; Java集合框架体系&#xff1a;&#xff08;Java.util包下&#xff09; Collection接口中的方法测试&#xff1a; 迭代器&#xff08;Iterator&#xff09;的作用&#xff1a;用来遍历集合元素。 增强for循环&#xff08;即for…...

已安装的nginx追加ssl模块

Nginx开启SSL模块1 切换到源码包&#xff1a; cd /usr/local/src/nginx-1.11.3 2 查看nginx原有的模块 /usr/local/nginx/sbin/nginx -V 在configure arguments:后面显示的原有的configure参数如下&#xff1a; –prefix/usr/local/nginx --with-http_stub_status_module …...

一个关键词的SEO优化过程中需要注意什么

一个关键词的SEO优化过程中需要注意什么 在数字营销的世界里&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;是一个核心的组成部分。其中&#xff0c;关键词优化是SEO策略的关键环节。对于一个关键词的SEO优化过程中&#xff0c;有许多细节需要注意&#xff0c;以确保最…...

【Guava】并发编程ListenableFutureService

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

OpenClaw自动化周报生成:Qwen2.5-VL-7B图文混合排版实战

OpenClaw自动化周报生成&#xff1a;Qwen2.5-VL-7B图文混合排版实战 1. 为什么需要自动化周报 每周五下午3点&#xff0c;我的日历总会准时弹出"写周报"的提醒。作为一个小团队的Tech Lead&#xff0c;我需要汇总Jira任务进展、Git代码提交、会议纪要等零散信息&am…...

OpenClaw日志分析实战:Phi-3-vision-128k-instruct多维度错误模式识别

OpenClaw日志分析实战&#xff1a;Phi-3-vision-128k-instruct多维度错误模式识别 1. 为什么需要智能日志分析 凌晨三点&#xff0c;我被手机警报惊醒——服务器又崩了。揉着惺忪睡眼打开终端&#xff0c;面对满屏的日志文件&#xff0c;那种熟悉的无力感再次袭来。这已经是本…...

飞机喷涂废气治理厂家丨一场看不见的“废气治理战”如何打响?

你有没有注意过&#xff0c;当你透过舷窗望向停机坪时&#xff0c;那些静静停靠的飞机&#xff0c;机身光洁如镜&#xff0c;涂装色彩鲜明&#xff1f;一架飞机交付使用&#xff0c;到每隔数年的定期大修&#xff0c;飞机都需要经历复杂的喷涂过程。这层看似简单的“外衣”&…...

当AI真正“看懂“你的屏幕:GPT-5.4如何重新定义人机协作的边界

摘要&#xff1a; 2026年3月&#xff0c;OpenAI发布了GPT-5.4。这不是一次普通的模型迭代&#xff0c;而是一次能力边界的重新定义——它首次实现了原生的"计算机使用"能力&#xff0c;能在桌面上像人类一样点击按钮、填写表单、操作软件&#xff1b;它拥有五级可调的…...

大厂真实高频的 LLM 大模型面试 36 题例题详解

一、基础原理篇(8 题) 1. 什么是 Transformer?核心结构是什么? 答:Transformer 是基于自注意力机制的 seq2seq 模型,完全替代 RNN 结构。核心结构: Encoder(编码)+ Decoder(解码) 多头注意力(Multi-Head Attention) 前馈网络 FFN 层归一化、残差连接举例:GPT 只…...

SNH48夏季团综计划:碧海之上,星河之下

海风裹挟着咸涩的气息&#xff0c;又一次吹进了SNH48的夏天。万众瞩目的夏季团综计划正在火热进行中&#xff0c;一场属于SNH48的夏日狂欢即将拉开帷幕。与此同时&#xff0c;随着SNH48 GROUP第十三届年度盛典进入紧锣密鼓的筹备阶段。从阳光沙滩的活力绽放&#xff0c;到《声动…...

Python内存管理与垃圾回收:非科班转码者的指南

Python内存管理与垃圾回收&#xff1a;非科班转码者的指南 前言 大家好&#xff0c;我是第一程序员&#xff08;名字大&#xff0c;人很菜&#xff09;。作为一个非科班转码、正在学习Rust和Python的萌新&#xff0c;我最近开始关注Python的内存管理和垃圾回收机制。内存管理是…...

CloudFlare R2的S3兼容性有多香?一个PicGo插件搞定七牛云、阿里云OSS无缝迁移

CloudFlare R2的S3兼容性实战&#xff1a;用PicGo实现多平台图床无缝迁移 当七牛云突然调整存储计费策略时&#xff0c;我服务器上3000多张技术文档配图每月产生了近200元的额外成本。而迁移到阿里云OSS后&#xff0c;又遇到了国内备案的繁琐流程。直到发现CloudFlare R2的S3兼…...