0

EE 3.5.15
Channel Images 6.0.4
PHP 7.2.13

I'm experiencing a weird error with Channel Images addon, i am not more able to upload files in channels' existing items or new ones.
The file looks like is completely uploaded (it reachs 100%) and then an error occurrs:

Server response was not as expected, probably a PHP error. OPEN ERROR

"Open error" doesn't really help because the ajax call already thrown a js error, inspecting it show that the response text is a full web page (the front page).

It looks like something similar to what happened in this post, but the given solutions (php memory and small files) are not helpful.

Trying to create new channel and a new channel_images field doesn't solve the issue.
The channel_images field definition shows that it fails to test location, loading the front page of the website inside the modal instead of the test results.

Many PHP 7 versions has been tested. The only thing that happened on the server are the PHP recompile occurred on december, and the hosting service stated that nothing changed.

Further details:

  • the website is on shared hosting
  • the native EE upload mechanism works properly
  • double checked path and upload directory under Settings > URL and Path Settings and field detail
  • caching driver is setted to "file"
  • website is running PHP 7.2 and I am enough confindent all the needed php extensions are loaded
  • the htaccess is the one from the EE manual

Do you have any hints where/what i can investigate?
Could the PHP recompilation be responsible?

2 Answers 2

0

Assuming you have a local copy of your applications code base, and are either running on a Linux/Unix OS or you use a modern IDE like PHP Storm, you can search that add-ons codebase for that error term, OPEN ERROR. It'll probably be in a language file for the add-on, which will give you the language key for that error message. In the language file, it'll probably look something like this:

"open_error_msg" => "OPEN ERROR"

The next step is to search the add-on code base for that key, open_error_msg. This should show you everywhere in the add-on code where that error is returned, and you can snoop out what is throwing the message.

If it's thrown from multiple places, you can add tracers to the add-on code. I usually do something like this:

file_put_contents ($_SERVER["DOCUMENT_ROOT"] . "/log_file.log", date("c") . " : " . __FILE__ . " : " . __FUNCTION__ . " : " . __LINE__ .  "\n\r", FILE_APPEND);

Drop that in where you think the issue is happening, and if log lines are showing up in that file ({your_web_root}/log_file.log) when you try to upload files, you've identified the code area returning the error. Work from there. I usually tail my log file when debugging unknown thrown errors on Linux using tail -f ./log_file.log live so I can get nuances as to when the issue occurs in the execution cycle.

Sorry, I really meant this more as a comment and not an answer since I don't use Channel-Images, but certainly couldn't shorten it to just a comment. But I have used this method to debug EE and EE add-ons many times.

1
  • thanks for your hints jrothafer. It looks like EE fails to load channel_images so the specified hook the should be triggered is never being invoked.The db row where hook info is stored looks regular. Furthermore, not even a single php error in the log
    – jacknife
    Commented Jan 25, 2019 at 15:40
0

It turns out that for my case is a conflict of the two plugins, Channel Images and Publisher. With a specific setting of Publisher (add url prefix setted to yes) the Channel Images fails to upload any files. Some warnings involved the cache (fail to write) and i suspect something is wrong with my EE installation. I'm going with the rebuild of the website on a newest EE release.

The Publisher's support turned out to be immediate and helpful, while I have been waiting for a response from EEharbor for three weeks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.