当前位置: 首页 > news >正文

mac 防止brew 安装 nginx 后不通过服务直接启动

  • 直接看代码~,逻辑很简单,把原命令替换掉
NGINX_BIN=$(which nginx)
sudo mv "$NGINX_BIN" "${NGINX_BIN}.bin"
sudo tee "$NGINX_BIN" << 'EOF'
#!/bin/bashNGINX_REAL="${BASH_SOURCE[0]}.bin"if [[ ! -x "$NGINX_REAL" ]]; thenecho "❌ 找不到原始 nginx: $NGINX_REAL" >&2exit 1
fi# === 白名单:只允许明确的安全命令 ===
case "$1" in-t|--test|\-T|--test-full|\-v|--version|\-V|--verbose|\-h|--help)exec "$NGINX_REAL" "$@";;
esac# === 特殊处理:nginx -s reload/stop 等信号操作 ===
if [[ "$1" == "-s" ]]; thencase "${2:-}" instop|quit|reopen|reload)exec "$NGINX_REAL" "$@";;esac
fi# === 所有其他情况(包括无参数!)都拦截 ===
echo "⚠️  检测到可能启动 Nginx 实例的操作!"
echo "💡 请使用 Homebrew Services 管理:"
echo "     brew services start nginx"
echo "     brew services stop nginx"
echo ""
echo "🔧 调试用法(绕过拦截):"
echo "     $NGINX_REAL $*"
echo ""# 如果是无参数,特别说明
if [[ $# -eq 0 ]]; thenecho "❓ 你运行了 'nginx'(无参数),这会启动新实例!"
firead -p "是否继续? (y/N): " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; thenexec "$NGINX_REAL" "$@"
elseecho "🚫 已取消。"exit 1
fi
EOF
sudo chmod +x "$NGINX_BIN"
http://www.jsqmd.com/news/56166/

相关文章:

  • 从小工到专家3
  • 2025常州本地美食新地标TOP5权威推荐:挖掘城市烟火味,
  • CICD(一)CI/CD概述及GitLab部署和一些Git命令 - 详解
  • 11.30代码大全二
  • KFCoder - 敏捷冲刺日志 - 3rd
  • KFCoder - 敏捷冲刺日志 - 2nd
  • 2025江苏塑料中空板厂家TOP5权威推荐:中空板咬盖箱/对
  • 2025专业奢侈品回收平台TOP5推荐:综合口碑企业助力安全
  • 同步带轮厂家TOP5权威推荐:同步带轮制造厂甄选指南,专业的
  • 2025常州本地人推荐美食:非遗美食鲜珍珍雪山草鸡火锅,解锁
  • 代码大全阅读笔记4
  • 20232317 2025-2026-1 《网络与系统攻防技术》实验七实验报告
  • 笔记三
  • 笔记二
  • 2025年新能源汽车充电桩生产商哪家好?新能源汽车充电桩生产
  • 2025年专业的奢侈品回收品牌企业推荐:高性价比、口碑好的奢
  • 2025广东安徽山东甲级资质工程设计公司合作加盟分公司TOP
  • 2025年全国奢侈品回收平台推荐:诚信的奢侈品回收公司有哪些
  • 深入解析:【基于one-loop-per-thread的高并发服务器】--- 项目介绍模块划分
  • 2025年江西安徽甲级资质工程设计公司合作加盟分公司排行榜,
  • 完整教程:Springboot的民宿管理系统的设计与实现29rhm9uh(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 2025年十大口碑好的文艺演出公司推荐,专业有实力的文艺展示
  • AI_Info_Gemini3
  • 加训目录
  • 如何结束掉pm2进程 (nodejs)
  • iOS 实现微信读书的仿真翻页
  • Swift 6.0 核心特性与迁移指南
  • Swift 5.9+ 核心特性与实用升级
  • 实用指南:Go语言设计模式:享元模式详解
  • Odoo中使用Google Cloud Storage云存储