-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
直接拉取源码部署
luolongfei edited this page May 15, 2022
·
1 revision
所有操作均在Centos7系统下进行,其它Linux发行版大同小异
创建文件夹
mkdir -p /data/wwwroot/freenom && cd /data/wwwroot/freenom
clone 本仓库源码
git clone https://github.com/luolongfei/freenom.git ./
复制配置文件模板
cp .env.example .env
编辑配置文件
vim .env
# 注意事项
# .env 文件里每个项目都有详细的说明,这里不再赘述,简言之,你需要把里面所有项都改成你自己的。需要注意的是多账户配置的格式:
# e.g. MULTIPLE_ACCOUNTS='<账户1>@<密码1>|<账户2>@<密码2>|<账户3>@<密码3>'
# (注意不要省略“<>”符号,否则无法正确匹配)
# 当然,若你只有单个账户,只配置 FREENOM_USERNAME 和 FREENOM_PASSWORD 就够了,单账户和多账户的配置会被合并在一起读取并去重。
# 编辑完成后,按“Esc”回到命令模式,输入“:wq”回车即保存并退出,不会用 vim 编辑器的可以谷歌一下:)
yum -y install cronie crontabs
验证 crond 是否安装及启动
yum list cronie && systemctl status crond
验证crontab是否安装
yum list crontabs $$ which crontab && crontab -l
crontab -e
# 任务内容如下
# 此任务的含义是在每天早上 9点 执行 /data/wwwroot/freenom/ 路径下的 run 文件,最佳实践是将这个时间修改为一个非整点的时间,防止与很多人在同一时间进行续期操作导致 freenom 无法稳定提供服务
# 注意:某些情况下,crontab 可能找不到你的 php 路径,下面的命令执行后会在 freenom_crontab.log 文件输出错误信息,你应该指定 php 路径:把下面的 php 替换为 /usr/local/php/bin/php (根据实际情况,执行 whereis php 即可看到 php 执行文件的真实路径)
00 09 * * * cd /data/wwwroot/freenom/ && php run > freenom_crontab.log 2>&1
systemctl restart crond
若要检查计划任务
是否正常,你可以将上面的任务执行时间设置在几分钟后,然后等到任务执行完成, 检查/data/wwwroot/freenom/
目录下的freenom_crontab.log
文件内容,是否有报错信息。常见的错误信息如下:
- /bin/sh: php: command not found
- /bin/sh: /usr/local/php: Is a directory
(点击即可展开或收起)
解决方案
执行
whereis php# 上面的命令可确定 php 执行文件的位置,一般输出为“php: /usr/local/php /usr/local/php/bin/php”,选长的那个即:/usr/local/php/bin/php
现在我们知道 php 执行文件的路径是
/usr/local/php/bin/php
(根据你自己系统的实际情况,可能不同),然后修改表单任务里的命令,把
00 09 * * * cd /data/wwwroot/freenom/ && php run > freenom_crontab.log 2>&1
改为
00 09 * * * cd /data/wwwroot/freenom/ && /usr/local/php/bin/php run > freenom_crontab.log 2>&1
更多参考:点这里
当然,如果你的计划任务
能正确找到php路径
,没有错误,那你什么也不用做。
至此,所有的配置都已经完成,下面我们验证一下整个流程是否走通。
你可以先将.env
中的NOTICE_FREQ
的值改为1(即每次执行都推送通知),然后执行
cd /data/wwwroot/freenom/ && php run
不出意外的话,你将收到一封关于域名情况的邮件。
有关 直接拉取源码部署 的内容结束。