Welcome Guest, Not a member yet? Register   Sign In
unable to execute phantomjs from within my CI3 app
#1

I am using koolreport. Koolreport is trying to run phantomjs but it fails with this error:
Type: Exception
Message: Could not execute phantomjs
Filename: /app/vendor/koolreport/export/Handler.php
Line Number: 67

My application is using Docker. Koolreport techS told me to try to run the example code that comes with phantomjs. I did this from the CLI and it runs fine. I have also tried changing the permissions of the phantomjs file. But the files is not found. 
ubuntu@ip-172-31-66-201:~/rst/RST/app/vendor/koolreport/export/bin$ sudo chmod +x app/vendor/koolreport/export/bin/phantomjs

chmod: cannot access 'app/vendor/koolreport/export/bin/phantomjs': No such file or directory
I know it is there because I can see it. 
ubuntu@ip-172-31-66-201:~/rst/RST/app/vendor/koolreport/export/bin$ ls

phantomjs
Can anyone tell me what is going on?
proof that an old dog can learn new tricks
Reply
#2

Your chmod command is wrong. You are in ~/rst/RST/app/vendor/koolreport/export/bin and then you then you try to change permission of a file in app/vendor/koolreport/export/bin/phantomjs. The OS is right, it doesn't exist. Try sudo chmod +x phantomjs.

...but the question remains, since when a javascript file needs to be executable? This doesn't make any sense. It's not a binary file containing an executable program, it's just a text file. I should be readable by the web server, not executable. That's an unnecessary security risk.
CodeIgniter 4 tutorials (EN/FR) - https://includebeer.com
/*** NO support in private message - Use the forum! ***/
Reply
#3

Thanks. I ended up adding the path to ~/export/bin to my path and now when I try to run I get the string that should run (see below). And when I run it from the cli I get:

ubuntu@ip-172-31-66-201:~$ phantomjs --ignore-ssl-errors=true /app/vendor/koolreport/export/pdf/pdf.js /tmp/61b9eeb9320de2.tmp /tmp/61b9eeb9322f93.pdf eyJmb3JtYXQiOiJBNCIsIm9yaWVudGF0aW9uIjoicG9ydHJhaXQiLCJleHBlY3RlZExvY2F0aW9uIjoiaHR0cDpcL1wvc3RhZ2luZy5kYXNoYm9hcmQucmVzZWFyY2hzdHVkeW9ubGluZS5jb21cL2luZGV4LnBocFwvQ29uZmlndXJlXC9leGVjdXRpdmVfc3VtbWFyeSIsInJlc291cmNlV2FpdGluZyI6MTAwMH0=
Can't open '/app/vendor/koolreport/export/pdf/pdf.js'

So do I need to add another path?
proof that an old dog can learn new tricks
Reply
#4

The path is wrong in your command. According to your previous post, the app folder is in ~/rst/RST/, not in / (the root of the file system). So your command should be something like this: 
phantomjs --ignore-ssl-errors=true ~/rst/RST/app/vendor/koolreport/export/pdf/pdf.js ...
CodeIgniter 4 tutorials (EN/FR) - https://includebeer.com
/*** NO support in private message - Use the forum! ***/
Reply




Theme © iAndrew 2016 - Forum software by © MyBB