NC 15 Sourceinstallation on FreeBSD 12 always fails with internal server error

Hi dear community,
my setup: virtual server with FreeBSD 12, NGinx 1.14, PHP 7.2 and MariaDB 10.2. Nextcloud 15 was downloaded from nextcloud.com and installed in the root directory of https server of NGinx. The installation procedure:

  1. extract nextcloud zip
  2. change ownership of apps- and config-folder to www (user who is running both nginx and php-fpm)
  3. create folder “data” inside the nextcloud folder and change the owner to www
  4. create the data folder for the user data outside the nextcloud folder and change owner to www

After filling all the fields of the installation wizard it does it´s magic and ends with an “internal server error dkuJWhCZHvc2dg7XOjI1”
At this time the wizard

  • has created the database and added the configured admin user
  • written the whole config.php file
    This is the only entry in the nextcloud.log file, I have removed some of passwords and user names…

{“reqId”:“dkuJWhCZHvc2dg7XOjI1”,“level”:3,“time”:“2019-01-15T10:45:00+00:00”,“remoteAddr”:“77.8.17.196”,“user”:"–",“app”:“index”,“method”:“POST”,“url”:"/index.php",“message”:{“Exception”:“Error”,“Message”:“Call to undefined function OC\Files\Storage\filter_var()”,“Code”:0,“Trace”:[{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Storage/Common.php",“line”:549,“function”:“scanForInvalidCharacters”,“class”:“OC\Files\Storage\Common”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”,"\/"]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Storage/Common.php",“line”:540,“function”:“verifyPosixPath”,“class”:“OC\Files\Storage\Common”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Cache/Scanner.php",“line”:134,“function”:“verifyPath”,“class”:“OC\Files\Storage\Common”,“type”:"->",“args”:[".",“appdata_oc3p0852g1dm”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Cache/Scanner.php",“line”:336,“function”:“scanFile”,“class”:“OC\Files\Cache\Scanner”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”,3,-1,null,false]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Cache/Updater.php",“line”:124,“function”:“scan”,“class”:“OC\Files\Cache\Scanner”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”,false,3,false]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/View.php",“line”:320,“function”:“update”,“class”:“OC\Files\Cache\Updater”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”,1547549100]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/View.php",“line”:1161,“function”:“writeUpdate”,“class”:“OC\Files\View”,“type”:"->",“args”:[{“class”:“OC\Files\Storage\Local”},“appdata_oc3p0852g1dm”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/View.php",“line”:268,“function”:“basicOperation”,“class”:“OC\Files\View”,“type”:"->",“args”:[“mkdir”,"/appdata_oc3p0852g1dm",[“create”,“write”]]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Node/Folder.php",“line”:160,“function”:“mkdir”,“class”:“OC\Files\View”,“type”:"->",“args”:["/appdata_oc3p0852g1dm"]},{“function”:“newFolder”,“class”:“OC\Files\Node\Folder”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Node/LazyRoot.php",“line”:64,“function”:“call_user_func_array”,“args”:[[{“class”:“OC\Files\Node\Root”},“newFolder”],[“appdata_oc3p0852g1dm”]]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Node/LazyRoot.php",“line”:390,“function”:"__call",“class”:“OC\Files\Node\LazyRoot”,“type”:"->",“args”:[“newFolder”,[“appdata_oc3p0852g1dm”]]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/AppData/AppData.php",“line”:84,“function”:“newFolder”,“class”:“OC\Files\Node\LazyRoot”,“type”:"->",“args”:[“appdata_oc3p0852g1dm”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Files/AppData/AppData.php",“line”:107,“function”:“getAppDataFolder”,“class”:“OC\Files\AppData\AppData”,“type”:"->",“args”:[]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/App/AppStore/Fetcher/Fetcher.php",“line”:138,“function”:“getFolder”,“class”:“OC\Files\AppData\AppData”,“type”:"->",“args”:["/"]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Installer.php",“line”:199,“function”:“get”,“class”:“OC\App\AppStore\Fetcher\Fetcher”,“type”:"->",“args”:[]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Installer.php",“line”:480,“function”:“downloadApp”,“class”:“OC\Installer”,“type”:"->",“args”:[“bruteforcesettings”]},{“file”:"/usr/local/www/wolke/nextcloud/lib/private/Setup.php",“line”:391,“function”:“installAppBundle”,“class”:“OC\Installer”,“type”:"->",“args”:[{“class”:“OC\App\AppStore\Bundles\CoreBundle”}]},{“file”:"/usr/local/www/wolke/nextcloud/core/Controller/SetupController.php",“line”:67,“function”:“install”,“class”:“OC\Setup”,“type”:"->",“args”:[{“install”:“true”,“adminlogin“:“ADMIN“,“adminpass“:“ADMINPASS“,“adminpass-clone“:“ADMINPASS“,“directory”:"/usr/local/www/wolke/data",“dbtype”:“mysql”,“dbuser”:“root”,“dbpass“:“ROOTPASS“,“dbname“:“DBNAME“,“dbhost”:“localhost:3306”,“dbIsSet”:true,“directoryIsSet”:true}]},{“file”:"/usr/local/www/wolke/nextcloud/lib/base.php",“line”:925,“function”:“run”,“class”:“OC\Core\Controller\SetupController”,“type”:"->",“args”:[{“install”:“true”,“adminlogin“:“ADMIIN“,“adminpass“:“ADMINPASS“,“adminpass-clone“:“ADMINPASS“,“directory”:"/usr/local/www/wolke/data",“dbtype”:“mysql”,“dbuser”:“root”,“dbpass“:“ROOTPASS“,“dbname“:“DBNAME“,“dbhost”:“localhost:3306”,“dbIsSet”:true,“directoryIsSet”:true}]},{“file”:"/usr/local/www/wolke/nextcloud/index.php",“line”:42,“function”:“handleRequest”,“class”:“OC”,“type”:"::",“args”:[]}],“File”:"/usr/local/www/wolke/nextcloud/lib/private/Files/Storage/Common.php",“Line”:568,“CustomMessage”:"–"},“userAgent”:“Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) iCab/5.8.5 Safari/604.5.6”,“version”:“15.0.1.2”}

I hope somebody can help me with that, any help is appreciated.

Best regards,

Mike

Not a solution, but there seems to be a confusion about the data directory. If you created a data directory outside the document root, you don’t need one inside. To what of the both is the datadirectory in config.php pointing?

Hi,
yes there seems to be some confusion: I´m running some Nextcloud servers on FreeBSD 11.x and now wanted to do a fresh install with new versions of both Nextcloud and operating system.
I´ve created the data folder inside the nextcloud folder after I´ve found some error messages complaning that nextcloud.log couldn´t be created in data folder. And while the outside location of data is set in the config file the log file still goes to the data folder inside the nextcloud folder.

Thanks for the hint,

Mike

I ran into the same error installing NC 15.0.5 on FreeBSD 11. I solved it by first installing php72-filter, which is apparently required to provide the filter_var() function.

Hi,
thanks k. and sorry for the late reply. Yes that fixes the error! Maybe they should update they´re source installation instructions?

Best regards,

Mike