2

I just trying to get the real path of my private filesystem but I just obtain an empty string if I use:

\Drupal::service('file_system')->realpath("private://");

There one user in Get the public path directory that says that this is the correct way, but this is not working for me.

My private filesystem is configured as:

$settings['file_private_path'] = '/User/adriancid/private-drupal-folder';

enter image description here

If I use file_default_scheme() I see:

private

  • Does it work with temporary:// or public://? Could be that you have not configured the private path in settings.php. – 4k4 May 12 '17 at 20:00
  • @4k4 It works for public, and I have configured my private filysystem. – Adrian Cid Almaguer May 12 '17 at 20:01
  • @4k4 This code: \Drupal::service('file_system')->realpath("private://"); works for you? – Adrian Cid Almaguer May 12 '17 at 20:05
  • Yes, it works when a private path is configured and returns FALSE on a site with no path configured. I see in the edit, you have an absolute path outside of the web root, is the path accessible by the web server? – 4k4 May 12 '17 at 20:12
  • @4k4 no, is not accesible by the web server. – Adrian Cid Almaguer May 12 '17 at 20:24
3

The problem is solved.

I had a problem with the path, so the correct path is

$settings['file_private_path'] = '/Users/adriancid/private-drupal-folder';

And I give permissions to write in the folder to the webserver.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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