Grav showing blank page even with right permissions

Test running Grav + Admin on the httpd webroot /srv/http/grav-admin in Arch Linux (EndeavourOS) gives a blank screen.

I have installed all the necessary PHP Modules. I enabled PHP for the server. My user is the one who httpd runs on. I changed ownership of the grav-admin folder to my user. ls -l shows my user owns it. There is no user group through which either grav-admin is owned or httpd runs, just my default user. I have seen the other similar questions and they all boiled down to permissions. However none of the solutions worked for me. I still get a blank screen after creating all the changes and restarting httpd.service.

I created an error reporting script in Grav’s folder. It includes the index.php file so it can report every error. This is what I get and I have no idea why:

Fatal error: Uncaught RuntimeException: Failed to save file /srv/http/grav-admin/user/config/security.yaml in /srv/http/grav-admin/vendor/rockettheme/toolbox/File/src/AbstractFile.php:374 Stack trace: #0 /srv/http/grav-admin/system/src/Grav/Common/File/CompiledFile.php(133): RocketTheme\Toolbox\File\AbstractFile->save() #1 /srv/http/grav-admin/system/src/Grav/Common/Config/Setup.php(416): Grav\Common\File\CompiledYamlFile->save() #2 /srv/http/grav-admin/system/src/Grav/Common/Config/Setup.php(294): Grav\Common\Config\Setup->check() #3 /srv/http/grav-admin/system/src/Grav/Common/Service/ConfigServiceProvider.php(40): Grav\Common\Config\Setup->init() #4 /srv/http/grav-admin/vendor/pimple/pimple/src/Pimple/Container.php(122): Grav\Common\Service\ConfigServiceProvider->Grav\Common\Service{closure}() #5 /srv/http/grav-admin/system/src/Grav/Common/Grav.php(217): Pimple\Container->offsetGet() #6 /srv/http/grav-admin/system/src/Grav/Common/Grav.php(258): Grav\Common\Grav->setup() #7 /srv/http/grav-admin/index.php(47): Grav\Common\Grav->process() #8 /srv/http/grav-admin/errorreport.php(4): include(‘…’) #9 {main} Next RuntimeException: Grav failed to initialize: Failed to save file /srv/http/grav-admin/user/config/security.yaml in /srv/http/grav-admin/system/src/Grav/Common/Config/Setup.php:420 Stack trace: #0 /srv/http/grav-admin/system/src/Grav/Common/Config/Setup.php(294): Grav\Common\Config\Setup->check() #1 /srv/http/grav-admin/system/src/Grav/Common/Service/ConfigServiceProvider.php(40): Grav\Common\Config\Setup->init() #2 /srv/http/grav-admin/vendor/pimple/pimple/src/Pimple/Container.php(122): Grav\Common\Service\ConfigServiceProvider->Grav\Common\Service{closure}() #3 /srv/http/grav-admin/system/src/Grav/Common/Grav.php(217): Pimple\Container->offsetGet() #4 /srv/http/grav-admin/system/src/Grav/Common/Grav.php(258): Grav\Common\Grav->setup() #5 /srv/http/grav-admin/index.php(47): Grav\Common\Grav->process() #6 /srv/http/grav-admin/errorreport.php(4): include(‘…’) #7 {main} thrown in /srv/http/grav-admin/system/src/Grav/Common/Config/Setup.php on line 420

Since I changed grav’s ownership directly to the same user that the Apache httpd server runs on, I shouldn’t be getting this problem.

The only way I can run Grav is through the built-in web server when the folder is somewhere in my home directory. But those are not ideal testing and learning conditions.

What can I do?

@dobodiedhere,

What can I do?

Have you tried a search: "Uncaught RuntimeException: Failed to save file" "security.yaml" - Google Search

I have tried searches and reading other articles, yes. They all lead to “changing ownership of the grav folder” which I have done. As said above, it still doesn’t work. It seems to be an issue maybe because I didn’t install it in the home directory (with hopes on running Grav on the Apache server and not on a built-in one). In my user’s home directory it all works. But when i put it in my Apache webroot /srv/http/ and change the permissions and ownership to my user, same one running the server, as Grav docs instruct, there’s this error. Is there some permission I might be missing somewhere?

EDIT: I reinstalled the grav-admin folder, now an error report screen shows up:

The directory “/srv/http/grav-admin/cache/doctrine/f6bf3e3e” does not exist and could not be created.

At least the error report screen is styled, so Grav launches but can’t do anything more.
Searching for this doesn’t show up any results.

Sorry, I missed that…