在VPS上搭建Plex,从零开始的完整指南
卡尔云官网
www.kaeryun.com
在VPS上搭建Plex是一个非常实用且有趣的过程,Plex是一个强大的视频流媒体服务平台,允许你创建一个私有视频库,供你和你的团队成员在本地离线观看,Plex还支持将视频流通过互联网分发给其他用户,这使得它成为许多VPS用户的最佳选择。
什么是Plex?
Plex(又名X.split)是一个基于PHP和Python的开源视频流媒体服务,它允许你在服务器上托管视频内容,同时提供多种访问方式,包括本地离线播放和互联网分发,Plex还支持多平台访问,包括Windows、macOS、Linux、iOS、Android等设备。
为什么选择VPS搭建Plex?
如果你是VPS用户,那么搭建Plex服务器有几个好处:
- 高性能:Plex服务器可以处理大量的视频流请求,同时保持稳定的性能。
- 高带宽:Plex服务器可以分发大量的视频流,不会占用你的带宽。
- 私有化:Plex服务器可以托管你的视频内容,防止未经授权的访问。
- 多平台支持:Plex支持多种设备,你可以轻松地将视频分发到多个平台。
如何在VPS上搭建Plex?
要搭建Plex服务器,你需要以下步骤:
步骤1:选择VPS平台
选择一个可靠的VPS平台,常见的VPS平台包括:
- Cloudflare:一个非常稳定的VPS平台,支持Plex安装。
- Linode:一个非常容易使用的VPS平台,适合新手。
- DigitalOcean:一个功能强大的VPS平台,支持多种服务。
- HostGator:一个可靠且便宜的VPS平台。
步骤2:安装Plex包
Plex是一个基于PHP和Python的服务,因此你需要确保你的VPS有足够的资源来运行Plex。
安装Plex包的命令如下:
sudo apt-get update && sudo apt-get install -y python3-dev python3-pip
安装Plex:
sudo apt-get install -y pxr sudo pxr init -y sudo pxr enable
步骤3:配置Plex环境变量
Plex需要一些环境变量来正常运行,这些环境变量通常存储在~/.config/plex/
目录中。
-
Plex Home:指定Plex的根目录。
export PLEX_HOME=/var/www/html/plex
-
Plex Base URL:指定Plex的访问URL。
export PLEX_BASE_URL=http://localhost:80
步骤4:安装Plex依赖包
Plex需要一些额外的Python包来运行,这些包可以通过pip3
安装。
安装依赖包:
sudo apt-get install -y libcdnrt-https-crlf libcdnrt-ftp-crlf sudo pip3 install plexrt-cdn plexrt-plex
步骤5:配置Plex配置文件
Plex的配置文件存储在~/.config/plex/plex.conf
中,你可以通过以下命令创建这个文件:
sudo nano /etc/plex/plex.conf
在文件中添加以下内容:
[global] plex_home=/var/www/html/plex plex_base_url=http://localhost:80 plex_password= plex_https_only=true plex_debug=true plex_profile=main plex_use64bit=true plex_https_only=true plex protocol_version=1 plex use_https=true plex use_https_for_p2p=true plex use_https_for_remote=true plex use_https_for_d2d=true plex use_https_for_remote2p=true plex use_https_for_d2d2=true plex use_https_for_remote3=true plex use_https_for_d2d3=true plex use_https_for_remote4=true plex use_https_for_d2d4=true plex use_https_for_remote5=true plex use_https_for_d2d5=true plex use_https_for_remote6=true plex use_https_for_d2d6=true plex use_https_for_remote7=true plex use_https_for_d2d7=true plex use_https_for_remote8=true plex use_https_for_d2d8=true plex use_https_for_remote9=true plex use_https_for_d2d9=true plex use_https_for_remote10=true plex use_https_for_d2d10=true plex use_https_for_remote11=true plex use_https_for_d2d11=true plex use_https_for_remote12=true plex use_https_for_d2d12=true plex use_https_for_remote13=true plex use_https_for_d2d13=true plex use_https_for_remote14=true plex use_https_for_d2d14=true plex use_https_for_remote15=true plex use_https_for_d2d15=true plex use_https_for_remote16=true plex use_https_for_d2d16=true plex use_https_for_remote17=true plex use_https_for_d2d17=true plex use_https_for_remote18=true plex use_https_for_d2d18=true plex use_https_for_remote19=true plex use_https_for_d2d19=true plex use_https_for_remote20=true plex use_https_for_d2d20=true plex use_https_for_remote21=true plex use_https_for_d2d21=true plex use_https_for_remote22=true plex use_https_for_d2d22=true plex use_https_for_remote23=true plex use_https_for_d2d23=true plex use_https_for_remote24=true plex use_https_for_d2d24=true plex use_https_for_remote25=true plex use_https_for_d2d25=true plex use_https_for_remote26=true plex use_https_for_d2d26=true plex use_https_for_remote27=true plex use_https_for_d2d27=true plex use_https_for_remote28=true plex use_https_for_d2d28=true plex use_https_for_remote29=true plex use_https_for_d2d29=true plex use_https_for_remote30=true plex use_https_for_d2d30=true plex use_https_for_remote31=true plex use_https_for_d2d31=true plex use_https_for_remote32=true plex use_https_for_d2d32=true plex use_https_for_remote33=true plex use_https_for_d2d33=true plex use_https_for_remote34=true plex use_https_for_d2d34=true plex use_https_for_remote35=true plex use_https_for_d2d35=true plex use_https_for_remote36=true plex use_https_for_d2d36=true plex use_https_for_remote37=true plex use_https_for_d2d37=true plex use_https_for_remote38=true plex use_https_for_d2d38=true plex use_https_for_remote39=true plex use_https_for_d2d39=true plex use_https_for_remote40=true plex use_https_for_d2d40=true plex use_https_for_remote41=true plex use_https_for_d2d41=true plex use_https_for_remote42=true plex use_https_for_d2d42=true plex use_https_for_remote43=true plex use_https_for_d2d43=true plex use_https_for_remote44=true plex use_https_for_d2d44=true plex use_https_for_remote45=true plex use_https_for_d2d45=true plex use_https_for_remote46=true plex use_https_for_d2d46=true plex use_https_for_remote47=true plex use_https_for_d2d47=true plex use_https_for_remote48=true plex use_https_for_d2d48=true plex use_https_for_remote49=true plex use_https_for_d2d49=true plex use_https_for_remote50=true plex use_https_for_d2d50=true
步骤6:启用Plex服务
在VPS上启用Plex服务:
sudo systemctl start plex sudo systemctl enable plex
步骤7:配置Plex的CDN
Plex需要一个CDN(内容分发网络)来加速视频,你可以使用以下CDN:
- Google Cloud Storage:一个免费的CDN。
- AWS S3:一个付费的CDN。
- Cloudflare:一个免费的CDN。
配置Google Cloud Storage:
- 创建一个Google Cloud Storage账户。
- 创建一个桶(bucket)。
- 将Plex的配置文件
~/.config/plex/plex.conf
上传到桶中。 - 在Plex配置文件中添加CDN信息:
[global] plex_https_only=true plex protocol_version=1 plex use_https=true plex use_https_for_p2p=true plex use_https_for_remote=true plex use_https_for_d2d=true plex use_https_for_remote2p=true plex use_https_for_d2d2=true plex use_https_for_remote3=true plex use_https_for_d2d3=true plex use_https_for_remote4=true plex use_https_for_d2d4=true plex use_https_for_remote5=true plex use_https_for_d2d5=true plex use_https_for_remote6=true plex use_https_for_d2d6=true plex use_https_for_remote7=true plex use_https_for_d2d7=true plex use_https_for_remote8=true plex use_https_for_d2d8=true plex use_https_for_remote9=true plex use_https_for_d2d9=true plex use_https_for_remote10=true plex use_https_for_d2d10=true plex use_https_for_remote11=true plex use_https_for_d2d11=true plex use_https_for_remote12=true plex use_https_for_d2d12=true plex use_https_for_remote13=true plex use_https_for_d2d13=true plex use_https_for_remote14=true plex use_https_for_d2d14=true plex use_https_for_remote15=true plex use_https_for_d2d15=true plex use_https_for_remote16=true plex use_https_for_d2d16=true plex use_https_for_remote17=true plex use_https_for_d2d17=true plex use_https_for_remote18=true plex use_https_for_d2d18=true plex use_https_for_remote19=true plex use_https_for_d2d19=true plex use_https_for_remote20=true plex use_https_for_d2d20=true plex use_https_for_remote21=true plex use_https_for_d2d21=true plex use_https_for_remote22=true plex use_https_for_d2d22=true plex use_https_for_remote23=true plex use_https_for_d2d23=true plex use_https_for_remote24=true plex use_https_for_d2d24=true plex use_https_for_remote25=true plex use_https_for_d2d25=true plex use_https_for_remote26=true plex use_https_for_d2d26=true plex use_https_for_remote27=true plex use_https_for_d2d27=true plex use_https_for_remote28=true plex use_https_for_d2d28=true plex use_https_for_remote29=true plex use_https_for_d2d29=true plex use_https_for_remote30=true plex use_https_for_d2d30=true plex use_https_for_remote31=true plex use_https_for_d2d31=true plex use_https_for_remote32=true plex use_https_for_d2d32=true plex use_https_for_remote33=true plex use_https_for_d2d33=true plex use_https_for_remote34=true plex use_https_for_d2d34=true plex use_https_for_remote35=true plex use_https_for_d2d35=true plex use_https_for_remote36=true plex use_https_for_d2d36=true plex use_https_for_remote37=true plex use_https_for_d2d37=true plex use_https_for_remote38=true plex use_https_for_d2d38=true plex use_https_for_remote39=true plex use_https_for_d2d39=true plex use_https_for_remote40=true plex use_https_for_d2d40=true plex use_https_for_remote41=true plex use_https_for_d2d41=true plex use_https_for_remote42=true plex use_https_for_d2d42=true plex use_https_for_remote43=true plex use_https_for_d2d43=true plex use_https_for_remote44=true plex use_https_for_d2d44=true plex use_https_for_remote45=true plex use_https_for_d2d45=true plex use_https_for_remote46=true plex use_https_for_d2d46=true plex use_https_for_remote47=true plex use_https_for_d2d47=true plex use_https_for_remote48=true plex use_https_for_d2d48=true plex use_https_for_remote49=true plex use_https_for_d2d49=true plex use_https_for_remote50=true plex use_https_for_d2d50=true
步骤8:测试Plex服务
在配置完成后,测试Plex服务是否正常运行:
sudo systemctl status plex
如果服务正常运行,你应该看到“OK”状态。
步骤9:配置Plex的网络
Plex需要网络配置来连接到CDN和网关,默认情况下,Plex的网络配置可能需要调整。
配置Plex的网络:
sudo nano /etc/plex/plexd.conf
在文件中添加以下内容:
[global] plexd2p=0 p2p=0 plex2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp2p=0 plexp2p=0 plexd2p=0 plexd2p=0 plexp
卡尔云官网
www.kaeryun.com