Hello,
For this post I am using version 22.2.0.2 of Nextcloud and current PHP version is 7.4.18 on a shared web hosting service.
I regularly encounter 2 PHP errors in my logs:
Error | PHP | Error: file_exists(): open_basedir restriction in effect. File(/templates/) is not within the allowed path(s): (/var/www/vhosts/xxxx.com/:/tmp/:/dev/urandom) at /var/www/vhosts/xxxx.com/httpdocs/lib/private/Template/Base.php#68
In the Base.php file it corresponds to the block:
protected function getAppTemplateDirs($theme, $app, $serverRoot, $app_dir) { // Check if the app is in the app folder or in the root if (file_exists($app_dir.'/templates/')) { return [ $serverRoot.'/themes/'.$theme.'/apps/'.$app.'/templates/', $app_dir.'/templates/', ]; } return [ $serverRoot.'/themes/'.$theme.'/'.$app.'/templates/', $serverRoot.'/'.$app.'/templates/', ]; }
Regarding this error I found this post: Lots of Error: file_exists(): open_basedir restriction in effect. in Log · Issue #27759 · nextcloud/server · GitHub
Is it enough to wait for a patched version of Nextcloud?
The second regular error is as follows, on 2 lines in the logs:
Error | PHP | Error: shell_exec() has been disabled for security reasons at /var/www/vhosts/xxxx.com/httpdocs/apps/serverinfo/lib/OperatingSystems/DefaultOs.php#114
Error | no app in context | Exception: Return value of OCA\ServerInfo\OperatingSystems\DefaultOs::getTime() must be of the type string, null returned
In the DefaultOs.php file it corresponds to the block:
public function getTime(): string { $date = shell_exec('date'); return $date; }
And there I do not find much. Can anyone help me?
Thank you in advance,
C.