Loading... 感谢Plex群里土著大佬的解决方案,折腾了一天总算把我的问题也解决了,原帖:[猛击直达](https://github.com/Tosslog/PlexMediaServer/wiki/%E5%85%B3%E4%BA%8EPMS%E7%9B%B4%E8%BF%9E%E8%87%AA%E5%B7%B1%E7%9A%84%E5%9F%9F%E5%90%8D%E9%85%8D%E7%BD%AE%E6%96%B9%E6%A1%88) 这里记录下过程,总体思路是放弃Plex官方的解析方案,利用Plex自带的自定义域名连接功能 先说明下我的实际环境: Plex的服务安装在N100的小主机内,用appleTV作为翻墙网关给N100提供无墙网络,利用局域网内另一台Windows小主机nuc7来运行一个基于Linux的虚拟机,上面跑一个Nginx的反向代理服务,把自定义域名的访问提供给N100的Plex服务器,从而实现了Plex服务器本身通过appleTV的网关无墙搜刮元数据的同时,外网的播放请求连接全部通过nuc7的反向代理转到了N100的Plex服务 各位可以根据自己的实际情况有选择的参考我的解决步骤 首先是在nuc7上安装VMware 之后安装debian虚拟机 更新系统 ``` apt update apt upgrade ``` 安装必备软件 ``` apt install curl -y apt install vim -y ``` 可选操作:打开SSH远程root登录 ``` vi /etc/ssh/sshd_config ``` 去掉以下字段#号注释及更改值为yes ``` PermitRootLogin yes ``` 一键安装docker ``` curl -fsSL https://get.docker.com | bash ``` 设置日志大小 ``` vi /etc/docker/daemon.json { "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3m" } } ``` 建立目录并安装Nginx Proxy Manager(NMP) ``` cd / cd /npm/compose docker compose up ``` 访问本机地址:81设置NMP 默认用户名admin@example.com 密码changeme 在SSL Certificates页面添加自定义域名,这里我用的通配符+域名 输入邮箱并选择DNS服务商,本例根据域名所在选择的阿里云 <div class="tip inlineBlock error"> 亲身经历,不要用godaddy,狗爹的api只能在你拥有10个域名以上的时候才可以用,后面的哥们不要踩坑了 </div>  替换掉api的key,勾选同意后申请加密证书 接下来配置网页代理,选择Host页面中的Proxy Host 填写自定义域名,选择https,填写Plex服务器ip(192.168.1.80)和Plex的web服务端口32400  打开全部可选开关后保存 --- 至此基本工作已完成,下面步骤为可选操作,主要是为了家宽ip变化后能自动同步到域名托管商的dns解析。如果固定ip或者喜欢手动同步的话可以跳过 安装ddns-go ``` docker run -d --name ddns-go --restart=always -p 9876:9876 -v /opt/ddns-go:/root jeessy/ddns-go ``` 完毕后访问本机地址:9876设置ddns-go 默认用户名密码为administrator:administrator DNS Provider页面  根据你的域名托管商勾选,这里是阿里云,所以填入阿里云的api key IPV4页面  填写自定义域名 其他选项可以保持默认,需要的话建议更改登录名及密码 最后点击下方的save即可生效,通过顶部的log按钮可以查看工作状态 之后在路由器的端口转发中设置个自定义的访问端口,转发给局域网内的NMP主机(192.168.1.45)443端口(图中的192.168.1.99地址应该是192.168.1.45) 比如 `plex.test.com:45678 转发给 192.168.1.45:443`  Plex的网络设置中确定不要勾选启用中转的选项,然后在下面填写自定义域名及端口号,比如 `https://plex.test.com:45678`  之后关掉Plex设置页面中的远程访问 至此一切设置就完成了,这种方式的缺点是:在Plex被墙的情况下,客户端首次连接需要无墙网络,登陆后就可以在有墙网络条件下连接了。安卓设备可以在卡logo的时候切换飞行模式正常使用,ios设备首次登陆后无需其他操作即可正常使用 其他疑问可以进群讨论:[复制链接到QQ打开](https://qm.qq.com/q/5JS0QGK7S2) 完结撒花,再次感谢土著大佬 <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-105f4ea221c406fe3268277c801dcecf25" aria-expanded="true"><div class="accordion-toggle"><span style="">24年8月份不太完美的旧版解决方案:</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-105f4ea221c406fe3268277c801dcecf25" class="collapse collapse-content"><p></p> 不知道国内是有什么大病,放着网上大把Emby付费服不管,基本自用或者家人用的Plex居然被墙了。 最近几天Plex的搜刮可以说是时好时坏,如果你的Plex Server服务器可以设置代理的话就会发现可以正常刮削,但我的N100服务器装的是Ubuntu,不太方便装Clash这类的代理软件,正好家里的AppleTV有Stash作为网关给其他设备提供翻墙线路,于是可以按照下面操作实现刮削正常: 首先用局域网内的其他设备ssh到N100,比如我用的是运行win10的NUC 运行Putty,ssh到N100的服务器 输入命令增加AppleTV的网关(192.168.1.175) ``` route add default gw 192.168.1.175 ``` 之后就可以扫库了,扫描到新增加的片子后会自动刮削信息,结束后需要恢复原来的默认网关 输入命令删除AppleTV的网关 ``` route del default gw 192.168.1.175 ``` 任务完成 简单的两个命令即可解决无法搜刮的问题。 至于为何要恢复网关,是因为,这么设置后等于N100这台机器全局走的代理,会造成Plex双重NAT而无法远程链接,只能在局域网内使用 <p></p></div></div></div> 最后修改:2024 年 11 月 20 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏