Inotifywait não detecta o upload do Wordpress, mas sim o upload do sftp

0

Eu tenho inotifywait executando com sucesso como -m iniciado do meu diretório de usuário usando um script bash. Meu usuário é membro do www-data. Aqui está o script:

#!/bin/bash
inotifywait -m -r --exclude '.*\.tmp' ../../var/www/html/mysite.art/wp-content/uploads/ -e close_write |
while read path action file; do
    #echo "The file '$file' appeared in directory '$path' via '$action'"
    # do something with the file
    jpegoptim -s --all-progressive -t -m30 $path$file
done

Se eu carregar um arquivo jpg, usando o sftp, para o meu diretório uploads / 2018/04 do Wordpress, o inotifywait detectará o novo arquivo e executará o jpegoptim conforme especificado no script. Aqui está o resultado ls -lh para aquele arquivo:

total 432K
-rw-r--r-- 1 myuser www-data 431K Apr 12 19:48 perspectivesketching.jpg

Arquivo compactado como esperado. E FWIW aqui são permissões na pasta 04:

drwxrwsr-x 2 www-data www-data 4.0K Apr 12 19:54 04

Agora eu removi esse arquivo para esvaziar o diretório para o próximo teste.

Se eu carregar o mesmo arquivo jpg usando a ferramenta de upload de mídia backend do Wordpress, inotifywait não detectará o novo arquivo e executará o script. Aqui está o resultado ls -lh após o upload via Wordpress:

total 1.3M
-rw-rw-r-- 1 www-data www-data 1.3M Apr 12 19:54 perspectivesketching.jpg

Alguma idéia porque?

NOTA: Eu tenho a criação de miniaturas desativada para o Wordpress. O Wordpress não compacta o arquivo original, por isso estou fazendo a compactação por meio do script acima. Tudo que eu uso é o arquivo original.

Já fiquei perplexo nestas várias horas agora. Muito obrigado por qualquer insight!

    
por Inkline 13.04.2018 / 04:17

0 respostas