首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pm2 watch ignore不会忽略文件/图像上传

pm2 是一个流行的 Node.js 进程管理工具,它提供了诸如进程守护、负载均衡、日志管理等功能。pm2 watchpm2 的一个功能,用于监视项目文件的变化,并在文件变化时自动重启应用。ignore 选项允许你指定某些文件或目录,使得 pm2 watch 在监视时忽略这些文件或目录的变化。

如果你发现 pm2 watch ignore 没有按预期忽略文件/图像上传,可能是以下几个原因:

基础概念

  • PM2 Watch: 监视项目文件变化并自动重启应用的功能。
  • Ignore: 允许指定要忽略的文件或目录,防止因这些文件的变化而触发重启。

可能的原因

  1. 配置错误: ignore 路径可能没有正确设置。
  2. 路径问题: 忽略的路径可能不正确或者不存在。
  3. 权限问题: 当前用户可能没有足够的权限访问或修改指定的忽略路径。
  4. 文件系统事件: 某些文件系统事件可能没有被 pm2 watch 正确捕获。

解决方法

  1. 检查配置: 确保你在启动 pm2 时正确使用了 --ignore-watch 参数,并且路径是正确的。例如:
  2. 检查配置: 确保你在启动 pm2 时正确使用了 --ignore-watch 参数,并且路径是正确的。例如:
  3. 验证路径: 确认 /path/to/ignore 是你想要忽略的目录或文件的准确路径。
  4. 权限检查: 确保运行 pm2 的用户有权访问和监视指定的目录。
  5. 使用正则表达式: 如果你需要忽略多个文件或目录,可以使用正则表达式。例如:
  6. 使用正则表达式: 如果你需要忽略多个文件或目录,可以使用正则表达式。例如:
  7. 调试信息: 使用 pm2 logs 查看是否有相关的错误信息,这可能会提供为什么文件变化没有被忽略的线索。
  8. 更新 PM2: 如果你使用的是旧版本的 pm2,尝试更新到最新版本,因为新版本可能修复了旧版本中的 bug。

示例代码

假设你有一个 Node.js 应用,并且想要忽略 public/uploads 目录下的文件变化,你可以这样启动你的应用:

代码语言:txt
复制
// app.js
const express = require('express');
const app = express();

app.use('/uploads', express.static('public/uploads'));

app.listen(3000, () => {
  console.log('App listening on port 3000!');
});

然后使用以下命令启动 pm2

代码语言:txt
复制
pm2 start app.js --watch --ignore-watch="public/uploads"

应用场景

  • 开发环境: 在开发过程中,你可能不希望每次上传文件都重启服务器。
  • 大型项目: 对于有大量静态资源的项目,忽略这些资源的监视可以提高开发效率。

通过以上步骤,你应该能够解决 pm2 watch ignore 不会忽略文件/图像上传的问题。如果问题仍然存在,建议查看 pm2 的官方文档或社区支持以获取更多帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

PM2快速入门

--name # Watch and Restart app when files change --watch # Set memory threshold for app...要以群集模式启动应用程序: $ pm2 start app.js -i max 在此处阅读有关集群模式的更多信息。 生态系统文件 您还可以创建一个配置文件,称为生态系统文件,以管理多个应用程序。...生成生态系统文件: $ pm2 ecosystem 这将生成和ecosystem.config.js文件: module.exports = { apps : [{ name: "app",...更改后重新启动应用程序 使用–watch选项非常简单: $ cd /path/to/my/app $ pm2 start env.js --watch --ignore-watch="node_modules..." 这将监视并重新启动应用程序,以解决当前目录+所有子文件夹中的任何文件更改,并且将忽略node_modules文件夹–ignore-watch =“ node_modules”中的任何更改。

1.5K10
  • PM2 进程管理快速入门

    --watchpm2 start binary-file -- --port 1520您可以传递给 CLI 的一些选项:# Specify an app name--name # Watch...要在群集模式下启动应用程序:pm2 start app.js -i max在此处阅读有关群集模式的更多信息。生态系统文件您还可以创建一个名为生态系统文件的配置文件来管理多个应用程序。...要生成生态系统文件,请执行以下操作:pm2 ecosystem这将生成一个 ecosystem.config.js 文件:module.exports = { apps : [{ name: "...服务器重启时重新启动应用程序使用 --watch 选项非常简单:cd /path/to/my/apppm2 start env.js --watch --ignore-watch="node_modules..."这将监视并重新启动应用程序,从当前目录+所有子文件夹进行任何文件更改,并将忽略node_modules文件夹中 --ignore-watch="node_modules" 的任何更改。

    41730

    pm2:从小白到写出一键部署前后端工程

    # 启动后端服务,pm2版本, ## 全局安装pm2 npm install -g pm2 ## 改用pm2来启动程序--watch表示,监控程序运行状态,一旦:服务异常:自动重启;服务发生变化:自动重启...pm2 start index.js --watch 这样启动的node进程,有个问题,就是我的下载文件xxx.zip文件是保存在tmp目录下,每当我一点下载的时候,node进程就会重启。...后来发现,去掉--watch不会重启,并且下载链接不会报错,但是,这时候,又出现了一个问题,就是,当代码有更新时,node服务并不会自动重新启动,这就又回到了“原始农业”时代,我觉得应该监控文件是可配置的...,这时候发现,得去学习一下pm2啦,于是我去翻看了pm2的官方文档,找到了ignore_watch和ecosystem.config.js文件。.../index.js', // instances: 1, watch: true, ignore_watch: ['[/\\]./

    85610

    记一下 pm2 常用配置及命令

    pm2配置 包括日志文件存放的位置等 pm2 stop [id/name] # 关闭某个服务 pm2 delete [id/name] # 删除某个服务 pm2 stop all # 关闭所有服务 pm2...--ignore-watch:排除监听的目录/文件,可以是特定的文件名,也可以是正则。...比如 --ignore-watch="test node_modules "some scripts"" -n --name:应用的名称。查看应用信息的时候可以用到。...-o --output :标准输出日志文件的路径。 -e --error :错误输出日志文件的路径。 监听 pm2 start ..../bin/www --watch #注意,这里用了--watch参数,意味着当你的应用代码发生变化时,pm2会帮你自动重启服务 配置及部署 部署的配置文件示例 { // 数组中放的是需要发布的项目一些变量的定义

    5K20

    使用pm2部署node生产环境

    一、PM2是什么 是可以用于生产环境的Nodejs的进程管理工具,并且它内置一个负载均衡。它不仅可以保证服务不会中断一直在线,并且提供0秒reload功能,还有其他一系列进程管理、监控功能。...start app.js --watch //监听模式启动,当文件发生变化,自动重启 //max 表示PM2将自动检测可用CPU的数量并运行尽可能多的进程 //max可以自定义,如果是4核CPU...pm2 monit 监控各个应用进程cpu和memory使用情况; ---- PM2配置方式 命令生产默认示例配置文件pm2 ecosystem或pm2 init,运行默认会生成ecosystem.config.js...如果设置成true,当应用程序变动时,pm2会自动重载。这里也可以设置你要监控的文件。 13...."ignore_watch": [ // 不用监听的文件 "node_modules", "logs"

    4K40

    从 node 到 python

    为了使用 3.x 版,你只需在 nodemon.json 配置文件修改 execMap 执行映射关系,将 py 后缀的文件使用 python3 执行: ?...其它配置项的代表含义仍然是一致的,例如 watch 监控文件,ignore 忽略文件等等。 三 web 框架 · sanic node.js 中的 web 框架众多,python 中同样如此。...四 部署 · pm2 部署应用时,在 node.js 中我们一般使用 pm2 去监控程序,让它挂了能够自动重启,而在 python 中我们同样可以使用 pm2 。...因为 pm2 的 cluster 模式是依赖于 node.js 的,无法直接在 python 中使用,但我们其实并不用对此过于在意,因为很多框架本身已经提供了多 worker 的支持,其次我们关注的重点仍在于异常重启...,而对比使用 supervisor 这种传统的部署监控方式,我当然更推荐 pm2 。

    1.1K10

    node服务及前端应用部署

    其次是及时收藏不会的知识点。第三是多在服务器上玩玩,只要胆大心细,玩不坏的。 上传文件到服务器 本地的话可以用cp(copy)命令。但是上传怎么办?...scp(最原始) # 上传文件 scp docker-compose.yml 用户名@ip地址:/root/sourse/ # 上传文件夹 scp -r 文件 root@ip地址:文件夹目录 ?...常用命令: # 安装 sudo npm i pm2 -g # --watch:坚挺文件变化 # 2表示启动多少实例 pm2 start app.js --watch i 2 # 根据机器cpu核心数最大限度利用资源...pm2 start app.js -i max # 查看运行的进程 pm2 list # 关闭 pm2 stop xxx pm2 stop all 完全可以在项目中建一个process.yml配置文件...# Virtual Host Configs include /etc/nginx/conf.d/*.config; include /etc/nginx/sites-enabled/*; 实际上我们不会去动主配置文件

    2.2K40

    Nuxt.js项目Docker部署和pm2部署

    该命令执行后,会在项目的.nuxt生成dist目录,此时只需要把下面的文件复制到服务器对应的目录下即可 # 运行 npm run build 后,复制下面的4个文件到服务器 .nuxt static...nuxt.config.js package.json 项目运行 需要注意的是,--name后面的名字是package.json中第一行的name # 在上传到服务器的目录下运行,状态为online...,说明部署成功 pm2 start npm --name "nuxt-django" -- run start --watch 相关命令 # 列表 PM2 启动的所有的应用程序 pm2 list #...RUN npm config set registry https://registry.npm.taobao.org RUN npm installCMD ["npm", "start"] 构建 文件上传...把打包后的四个文件上传到服务器对应文件夹下,将上面新建的Dockerfile也放在此目录下 # 打包为镜像,上传文件的目录下运行 docker build -t testimage .

    2.9K21

    PM2 进程管理工具使用总结

    进程; 支持source map,此项针对js, source map文件是js源文件的信息文件,里面存储着源文件的位置信息; 支持热重启; 支持部署工作流,pm2可依据测试环境和线上环境自动部署到不同的服务器...cpu和memory使用情况; pm2常用配置 pm2 配置方式 有两种,分别是通过命令行和配置文件。...node,更多选项可查看pm2 --help获取; 配置文件方式 pm2配置文件方式支持yml与json格式 processes.yml文件 processes.json 先来看看 PM2 支持的配置项...interpreter_args 传递给解释器的参数; instances 应用启动实例个数,仅在cluster模式有效,默认为fork; exec_mode 应用启动模式,支持fork和cluster模式; watch...监听重启,启用情况下,文件夹或子文件夹下变化应用自动重启; ignore_watch 忽略监听的文件夹,支持正则表达式; max_memory_restart 最大内存限制数,超出自动重启; env

    2.7K40
    领券