讲师中心 微信公众号
AI工具推荐 视频效率加速

宝塔面板管理的企业网站到期后怎么实现自动提醒并自动停止服务

浅磊酱_2011

浅磊酱_2011

发布时间:2026-04-05 22:40:34

|

693人浏览过

|

来源于php中文网

原创

宝塔面板不支持网站到期自动停站,需通过计划任务+Shell脚本实现;推荐在站点根目录创建.expire_at文件标记ISO格式到期日,并用脚本解析时间戳比对执行停站及邮件提醒。

宝塔面板管理的企业网站到期后怎么实现自动提醒并自动停止服务

宝塔面板本身不支持“网站到期后自动停止服务”——它只提供手动设置到期时间,且无内置自动停站逻辑。所谓“自动提醒+自动停站”,必须靠计划任务+Shell脚本组合实现。

如何给网站设置一个可被脚本识别的到期时间

宝塔在数据库里存了站点的 end_date 字段,但不对外暴露 API 读取;更可靠的做法是**用文件标记到期时间**,便于 Shell 脚本解析:

  • 在站点根目录下新建文件:/www/wwwroot/example.com/.expire_at
  • 内容只写一行日期,格式为 2026-05-20(ISO 8601,date -d 可直接解析)
  • 脚本每次执行时用 date -d "$(cat /www/wwwroot/example.com/.expire_at)" +%s 转成时间戳,再和当前时间比对
  • 别用中文或“2026年5月20日”这类格式,date -d 会解析失败

每天检查到期并自动停站的 Shell 脚本怎么写

把下面这段脚本保存为 /www/scripts/check_site_expiry.sh,然后加可执行权限:chmod +x /www/scripts/check_site_expiry.sh:

#!/bin/bash
SITE_DIR="/www/wwwroot/example.com"
EXPIRE_FILE="$SITE_DIR/.expire_at"
DOMAIN="example.com"
<p>if [ ! -f "$EXPIRE_FILE" ]; then
exit 0
fi</p><p>EXP_TS=$(date -d "$(cat $EXPIRE_FILE)" +%s 2>/dev/null)
NOW_TS=$(date +%s)</p><p>if [ "$EXP_TS" -le "$NOW_TS" ] && [ -n "$EXP_TS" ]; then
echo "$(date): Site $DOMAIN expired, stopping..." >> /var/log/site-expiry.log
/www/server/panel/pyenv/bin/python /www/server/panel/class/ stopyour_site_name</p><h1>注意:your_site_name 必须替换成你在宝塔里看到的实际站点名(不是域名),比如 example.com</h1><p>fi
  • 脚本里调用的是宝塔内部 Python 类的 stop 方法,路径和参数不能错,否则静默失败
  • stopyour_site_name 中的 your_site_name 是硬编码的站点标识,不是域名也不是目录名,得去宝塔「网站」列表里看那一列“站点名称”到底填的什么
  • 日志写入 /var/log/site-expiry.log,方便排查脚本是否真执行、是否卡在判断逻辑
  • 不要用 bt stop example.com —— 宝塔 CLI 的 bt 命令不支持按域名停站,只认内部 ID 或站点名

怎么配置邮件提醒+停站双动作

单靠停站不够,客户或运营需要提前知道。把停站逻辑和发邮件合并进一个脚本,避免两个任务不同步:

if [ "$EXP_TS" -le "$NOW_TS" ]; then
  echo "站点 $DOMAIN 已过期,已自动停止" | mail -s "【网站到期】$DOMAIN 停服通知" admin@example.com
  /www/server/panel/pyenv/bin/python /www/server/panel/class/ stopyour_site_name
fi
  • 确保系统已配置好 mail 命令(如 mailx 或 sendmail),否则邮件发不出,脚本也不会报错
  • 别用 echo ... | mutt —— 宝塔默认没装 mutt,依赖太多容易断
  • 如果要用微信/钉钉,建议在发完邮件后追加 curl 调用 Webhook,但注意别让网络超时拖慢整个脚本执行
  • 执行周期设为每天一次即可,太频繁没意义,还可能因并发导致重复停站

为什么停站后网站还能访问?三个最常忽略的点

脚本显示“已执行”,但浏览器仍能打开网站,大概率是以下其一:

  • 站点名写错了:stopyour_site_name 中的 your_site_name 和宝塔后台显示的不一致(比如你填了 www.example.com,但后台登记的是 example.com)
  • Nginx 没真正 reload:停站只是删了 server 块的启用标记,但旧配置可能还在内存里;建议脚本末尾加 bt restart nginx 强制刷新
  • 站点被 Apache 托管但脚本只停了 Nginx:先确认 Web 服务类型,ps -ef | grep httpd 或 ps -ef | grep nginx,再对应处理

真正生效的标志只有一个:去宝塔「网站」列表里看那个站点的状态栏,变成灰色“已停止”,且右侧按钮是“启动”而不是“停止”。其他都是假象。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

相关专题

更多
python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

2403

2023.08.11

前端和后端的区别
前端和后端的区别

前端关注的是用户界面的设计和交互,而后端则注重数据处理和逻辑控制。想了解更多前端后端的相关内容,可以阅读本专题下面的文章。

6250

2024.03.19

后端的主要工作内容介绍
后端的主要工作内容介绍

后端是应用程序的服务端部分,负责核心任务,如数据库交互、业务逻辑处理和响应客户端请求。想了解更多后端的相关内容,可以阅读本专题下面的文章。

5626

2024.03.19

php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

10484

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

6161

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

2115

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

3888

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

4594

2023.10.23

PixTV官网入口地址合集
PixTV官网入口地址合集

本专题汇总了 PixTV AI 一站式视频创作平台的官方入口与使用教程。无需下载软件,浏览器直接访问即可使用。平台将剧本、图像、视频、声音与剪辑整合在“无限画布”中,接入 GPT Image 2.5、Seedance 2.5 等头部模型。本专题整理了从新建画布、角色锚定、分镜拆分到视频生成与导出的完整操作指南,助你快速上手 AI 短剧与漫剧创作。

40

2026.10.10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn