宝塔+雷池部署在同一个服务器(避坑)
宝塔+雷池部署在同一个服务器(避坑)
本教程适用于宝塔8.0.5版本、雷池5.2.0、linux系统服务器。和我一样,没钱/觉得单独买服务器部署雷池不划算的同学。
一.安装宝塔和配置环境
如何SSH连接这里不再赘述,请自行百度查阅教程。
前往宝塔官网根据自己的系统版本选择脚本安装宝塔,登录宝塔后根据提示安装Nginx,在左侧的菜单点击Docker根据提示安装Docker。
请注意:Nginx和Docker务必在宝塔内完成安装
二.修改Nginx端口以避免80和443端口占用
先随便创建个站点,然后启用一下ssl证书,再开启个强制HTTPS(避坑,下文会用到)
1.先把新建的站点的配置文件中的端口修改一下,这里http改为81,https改为444
图中的if判断后面的端口是强制HTTPS的判断端口,(一定要改,不然反复重定向)如果你没有开启强制HTTPS就没有这个if判断代码,就不需要改了。
然后前往目录:
1 |
|
修改这个目录下的:
1 |
|
这两个文件夹的端口改为你刚刚站点设置的非标端口,比如我的是把443改为444,80改为81
请注意: 这里的0.default.conf这个文件中(也就是第二个图片)如果你没有网站开启ssl是没有443端口显示的,所以随便创建一个站点开启HTTPS非常重要
配置完可以重启一下Nginx,如果可以正常重启则说明配置正确。后期新增的网站域名一定要写a.com:xx,xx写你的非标端口,HTTPS端口也要改,否则默认使用80端口会出现各种意想不到的BUG
三.安装雷池
前往雷池官网复制对应系统脚本在SSH终端执行安装。
请注意: 如果你一开始没在宝塔安装Docker,雷池安装脚本会提示你并且在你确认后会安装Docker,但是这里安装的Docker在宝塔无法识别到,默认还是没有安装,所以在宝塔安装Docker是非常重要的
根据他的提示输入就行,有一个询问安装路径的提示,啥也不输入,默认就行(如果自定义安装路径,更新/卸载是个大麻烦)
然后会提示你绑定一个TOTP验证软件,这里推荐使用腾讯身份验证器绑定
请注入:这里有个坑,雷池的按钮有些在手机端单击无效,需要长按,长按即可解决,腾讯身份验证器TOTP绑定需要扫码,你可以用俩设备或者截图后用QR扫码提取一下验证代码验证,这里不再赘述。
获取访客真实IP等常规操作雷池官网均有教程,这里不再赘述。
主要说一下这个上游啥的咋请求,配置错误会出现502错误。
如果你选择雷池和宝塔通讯用HTTP协议就写HTTP协议你写的非标端口,我的示例是81端口,一定要注意,HTTP协议的上游写http://127.0.0.1:81注意协议和端口
如果你选择雷池和宝塔通讯用HTTPS协议就写HTTPS协议你写的非标端口,我的示例是444端口,一定要注意,HTTPS协议的上游写https://127.0.0.1:444注意协议和端口
如果你都按照上面的教程操作,是不会出现端口被占用情况的,请自行排查问题关键。
目前发现如果已经部署了站点,雷池可能会出现莫名其妙的占用现象,目前暂时没发现有解决方案,只能重装
雷池安装防护、升级等雷池官网均有教程,请自行查阅,这里不再赘述。
四.解决宝塔无法获取访客真实IP的问题
1. 在雷池的防护站点-代理设置中的修改源IP获取方式为从HTTP-Header
HTTP-Header设置为:X-Forwarded-For
在下方的其他代理配置中勾选传递客户端连接的host和协议。
2. 在Nginx配置中的HTTP代码块新增以下代码:
1 |
|
就这么多了,如果你还有其他疑问,可以发邮件到我的邮箱,完结撒花!
注:以上内容仅供学习交流使用,禁止用于非法目的。请自觉遵守法律规定。本网站所有内容仅限于学习交流和娱乐,任何非法用途均由使用者个人承担责任。