SOLVED Something went wrong while saving this configuration: Validate class not found from basename

ItsMattSon

Well-Known Member
Sep 5, 2016
182
38
103
Perth
cPanel Access Level
Root Administrator
Hi cPanel,

For some reason, Magento2 breaks when the include_path is left to the default, which is:
.:/opt/cpanel/ea-php70/root/usr/share/pear

However, it works when I change it to a simple period:
.

Or if I change it to:
.:/php/includes

Can anyone tell me why that could possibly be behaving that way? It makes no sense to me! :/
 

ItsMattSon

Well-Known Member
Sep 5, 2016
182
38
103
Perth
cPanel Access Level
Root Administrator
Hi all,

Resolved - my own fault! Turns out my custom open_basedir directive in the MultiPHP INI Editor was breaking this.

I had:
[PATH=/home/myacc4]
open_basedir = "/usr/lib/php:/usr/local/lib/php:/tmp"

Since /opt/ is not in the list, the default include_path consequently was breaking Magento2 functionality. The resolution was to either change the include_path to just a single period (so the /opt/ directory wouldn't be used as an include_path) or to add the /opt/cpanel/ea-php70/root/usr/share/pear directory to the open_basedir directive so the default include_path wouldn't cause trouble.

Note, it worked using /php/includes in the include_path because that folder doesn't exist. If it did, it would've failed also, just like the /opt/ directory.

Sorry for wasting anyone's time!
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,913
2,203
363
Hello Matt,

I'm glad to see you were able to solve the issue. Thank you for sharing the outcome.