我想阻止我的 robots.txt 文件同步到前端服务器。这是我的 /etc/lsyncd.conf 文件:
settings = {
logfile = "/tmp/lsyncd.log",
statusFile = "/tmp/lsyncd.stat",
statusInterval = 1,
}
sync{
default.rsync,
source="/var/www/html/blog",
target="sync:/var/www/html/blog",
rsyncOpts="-ltus",
excludeFrom="/var/www/html/blog/robots.txt",
}
/tmp/lsyncd.log 告诉
Normal: recursive startup rsync: /var/www/html/blog/ -> sync:/var/www/html/blog/ excluding
HELLO WORLD
Normal: Startup of '/var/www/html/blog/' finished.
Normal: Calling rsync with filter-list of new/modified files/dirs
/robots.txt
/
Normal: Finished a list = 0
这个设置好像不起作用。
答案1
我猜测excludeFrom
dir 与 dir 是相关的source
;因此,excludeFrom="/robots.txt"
可能会起作用。
编辑:天哪,忘记我上面写了什么了。excludeFrom
是一个 rsync 参数,它指定一个文本文件,其中包含要排除的文件列表,每行一个文件或模式。因此,您excludeFrom
应该包含一个文件的路径,然后该文件包含这个/var/www/html/blog/robots.txt
或/robots.txt
。
答案2
在的配置参数中使用rsync
的指令,或者,取决于您使用的版本。--exclude
lsyncd
rsyncOpts
_extra
lsyncd
答案3
每https://axkibe.github.io/lsyncd/manual/config/layer4/:
excludeFrom 是 FILENAME 参数,从此文件加载排除规则,每行一条规则
注意https://community.rackspace.com/general/f/34/t/3503:
警告!使用 excludeFrom 和文件时,请确保文件中没有空行。如果是,lsyncd 会将其视为“排除 /”,然后所有内容都会被排除。