什么是检测文件已更改并自动更新的简单方法?
例如,如果我刚刚上传了一个js/css文件,我希望服务器检测到我上传了新的js/css文件,并自动缩小它们。
编辑:我试过在运行时最小化,发现效率不高。值得注意的是,文件对于任何请求文件的人来说都是最小化的,这本身就是一种开销,实际上不最小化文件以交付更快。
理想情况下,文件应该在上传后几秒钟内缩小。比起持续的投票系统,是否存在一个基于事件的系统供我使用?
编辑:我使用mikhailov的答案,并添加以下的incron文件:
/var/www/laravel/public/js/main.js IN_MODIFY yui-compressor -o /var/www/laravel/public/js/main.min.js /var/www/laravel/public/js/main.js
Inotify是一种推荐的模式,用于在文件系统事件(文件创建、修改或删除)中获得通知,Wikipedia是这样说的:
Inotify (inode notify)是一个用于扩展的Linux内核子系统注意文件系统的更改,并报告这些更改应用程序的更改。
参见类似的用例:如何获得通过rsync复制文件的通知