基于宝塔面板,php8.1,nginx搭建
whmcs下载最新版(v8.13.1):https://download.whmcs.com/
神秘文件:License.zip
把神秘文件上传到/vendor/whmcs/whmcs-foundation/lib 路径下,覆盖原本的文件
确认php是否安装了以下扩展:ionCube、fileinfo
确认在php中移除了exec和shell_exec
参考文档:WHMCS使用手册 (修复的).pdf
确认配置好了SSL证书
key随便填个,数据库自己去创建
宝塔计划任务里面配置号定时任务,每五分钟执行一次
接着删除根目录下的install目录
设置禁止访问目录/vendor 规则填php
下载后台中文包:https://dwz.dk/udkxn ,然后放入到/admin/lang 路径下
https://你的网站/admin/login.php
选择中文,登录
按照步骤来就行,绝大部分直接跳过skip就行
进入后台->右上角头像->my accout,然后更改语言,改成中文,输入管理员密码即可成功
点击右上角扳手,然后点击系统设置->一般设置,配置基本信息,如果开启了cloudflare的cdn,这里最好配置下,不然会频繁掉后台登录
配置邮箱前,先把系统邮件发件人地址添加上,不然会配置不成功
下载incus模块:incus.zip
解压到/modules/servers
下载订单模板:standard_cart-nat_dN5r4.tar.gz
解压到/templates/orderforms
进入incus-lxc服务器配置证书
#openssl生成证书
openssl genrsa -out whmcs.key 4096
openssl req -new -key whmcs.key -out whmcs.csr -subj "/CN=whmcs"
openssl x509 -req -in whmcs.csr -signkey whmcs.key -out whmcs.crt -days 3650
#添加信任
incus config trust add-certificate ./whmcs.crt
把whmcs.crt和whmcs.key下载下来,上传到whmcs服务器中,同样设置下访问限制规则:/cert 规则:crt|key
点击服务器->添加服务器->模块选择Incus
主机名:incus服务器的ip
用户名留空
密码:填写刚刚上传好的证书密钥key(/www/wwwroot/xxx.com/cert/incus/us/1_1_1_1/whmcs.key)
访问哈希:填写刚刚上传好的证书crt(/www/wwwroot/xxx.com/cert/incus/us/1_1_1_1/whmcs.crt)
点击继续
填写相关信息后,取消最下面的安全,保存更改
进入whmcs服务器的控制台,输入以下命令,看看是否能正常访问(注意更改成你所放的证书路径)
curl -v -k --cert /www/wwwroot/xxx.com/cert/incus/us/1_1_1_1/whmcs.crt --key /www/wwwroot/xxx.com/cert/incus/us/1_1_1_1/whmcs.key https://incus服务器ip:8443/1.0/
后台点击产品/服务->创建新组->模板选择最后一个standard cart-nat
创建新产品->选择服务器/VPS->选择刚刚创建的组->产品名称填配置就行->模块选择incus->取消隐藏,然后继续
模块设置,可以去incus后台查看,默认就是default,如果你在incus开通了不同的配置,这里建议创建个profile配置
然后再incus中输入以下命令,把创建相同的配置都给加到这个配置文件中
#注意修改配置文件的名称,我用的是1c-128m-1g,宿主机总共生成了23台连续相同的配置
for i in {1..23}; do incus profile add ex$i 1c-128m-1g; done
#当然既然超开,这里少不了限制CPU嘛,每台限制到40%,这步看良心
for i in {1..23}; do incus config set ex$i limits.cpu.allowance 50%; done
返回到whmcs后台,继续配置产品,填上刚刚创建的1c-128m-1g配置文件名称
域名这里去掉