現在、Apache Webサーバーを実行するリモートのCentOS 5.6システムでsshを使用しています。私はポップラーpdftohtml
バイナリを使用する必要があります。残念ながら、そのマシンには現在インストールされていません。そこで、私はpopplerパッケージをダウンロードし、それを私のuserフォルダの下に作りました。 IIは、システム管理者はないですので、私はPHP shell_exec、-rwxrwxrwxシェルスクリプトを実行する権限が拒否されました
make install
をしなかったと私はPHP shell_exec()
を通じて実行するために必要なファイルが
/users/myfolder/poppler-0.18.2/utils/pdftohtml
ある
/users/myfolder/poppler-0.18.2/
の下にすべての私のコンパイルされたファイルを持っています
私がssh bashで実行すると、正しい出力が得られます。私は、代わりに、PHPスクリプトに次の行を置く場合:
echo shell_exec("https://stackoverflow.com/users/myfolder/poppler-0.18.2/utils/pdftohtml");
を私は次のような出力が得られます。私は777に現在-rwxrwxrwxあるファイルのアクセス権を設定しようとした
sh: /users/myfolder/poppler-0.18.2/utils/pdftohtml: Permission denied
。私はまた、shell_exec("whoami");
を使用すると "apache"という結果に気づきました。ファイルのアクセス権が-rwxrwxrwxの場合、スクリプトを実行できるべきではありませんか?
私はまた、make install
を通してpopplerをインストールすることで問題を解決できることも知っていますが、これはテスト目的であるため、テストが完了するまでシステムを個人フォルダ外に汚染することは避けてください。
助けてくれる誰にも感謝します!
CentOSもSELinuxを使用していませんか? – mario