Eu recomendo o seguinte:
-
use a versão mais recente do unoconv (pelo menos v0.7 quando for lançado, ou a ramificação principal do GitHub hoje)
-
use a versão estável mais recente do LibreOffice (versões recentes usam menos memória, geralmente são muito mais rápidas e causam menos falhas)
-
use o binário nativo do LibreOffice python para executar unoconv, por exemplo. /opt/libreoffice4.4/program/python / usr / bin / unoconv -f arquivo pdf.doc
-
codifique o caminho do python no script unoconv shebang, portanto, coloque na primeira linha #! / opt / libreoffice4.4 / program / python em vez de #! / usr / bin / env python. (O Apache / PHP geralmente não define o PATH, então o unoconv falha)
-
garanta que o usuário que está executando o unoconv tenha acesso de gravação ao seu diretório HOME
Se você fizer o acima, tudo deve funcionar bem. Se o LibreOffice ainda falhar, você deve levar isso para o projeto upstream. Também tome cuidado, pois o LibreOffice não pode manipular mais de uma conexão / cliente ao mesmo tempo, então, idealmente, seu script PHP deve bloquear e / ou enfileirar corretamente os pedidos. (Veja o utilitário do sistema flock para isso)
Se você ainda tiver algum problema, denuncie-o para: link