Seu shell parece não conseguir encontrar o binário. Tente chamá-lo com o nome completo do caminho (por exemplo, /usr/bin/ls
em vez de ls
). Para mais informações, consulte man bash
Usando o CentOS 6.3x64.
Estou tentando executar wkhtmltopdf
(de aqui ) de um script PHP. Eu posso chamar com sucesso wkhtmltopdf-amd64
diretamente via SSH. Mas ao chamá-lo do PHP via exec
, ele sempre falha com o código de saída 127. O caminho está correto, então esse não é o problema. Eu posso usar com sucesso exec
para chamar ls
e id
etc, então o problema parece ser específico para chamar wkhtmltopdf-amd64
.
Eu presumo que isso de alguma forma esteja relacionado a permissões, mas não tenho certeza de quais etapas devem ser tomadas. Eu tentei apache:apache
e outras propriedades no programa e ele tem 755 permissões.
Obrigado por qualquer orientação!
Nota adicional:
Desculpe por não esclarecer mais acima - eu confirmei que o problema não está relacionado ao caminho para o programa. Eu estou usando o caminho absoluto completo. Confirmei que o mesmo comando exato pode ser executado a partir da linha SSH sem problemas (independentemente do pwd
). Eu também criei um script de shell:
#!/bin/sh
echo 'hello, world!'
Eu posso chamar este script via exec
e ele funciona corretamente. No entanto, se eu modificá-lo para ser
#!/bin/sh
echo 'hello, world!'
/full/path/to/wkhtmltopdf-amd64 'http://www.google.com/' /full/path/to/output.pdf
falha e retorna o código de saída 127.
Seu shell parece não conseguir encontrar o binário. Tente chamá-lo com o nome completo do caminho (por exemplo, /usr/bin/ls
em vez de ls
). Para mais informações, consulte man bash
Eu tive o mesmo problema há algum tempo. No meu caso, eu tenho 126 sem o bit de execução e 127 com o bit definido.
Mais tarde descobri que estava relacionado a algumas bibliotecas compartilhadas ausentes no sistema. Mesmo que o binário esteja vinculado estaticamente, parece usar algumas bibliotecas compartilhadas do sistema.
Eu realmente não lembro quais bibliotecas estavam causando o problema, mas essa essência: link é um bom ponto de partida Eu acho.
Tags permissions php wkhtmltopdf centos exec