PUBLIC (non-user, non-authenticated) read-only folder

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can. :heart:

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • Nextcloud Hub 10 (31.0.0)
  • Operating system and version (e.g., Ubuntu 24.04):
    • Alma9
  • Web server and version (e.g, Apache 2.4.25):
    • 2.4.62
  • PHP version (e.g, 8.3):
    • 8.3.17

Summary of the issue you are facing:

How to share a (team) folder with general un-authenticated access?
Or a folder managed by a grup (RW access) with common ownership to the group, and shared ReadOnly without any other restrictions?

Thank you!

I don’t know if I’ve understood you correctly. But I think the Team folder itself cannot be shared with other third parties, as it is managed by the administrator for users, groups or teams. However, additional subfolders in the Teams folder can be created, which can be shared according to the authorisations.

So, i would like to have a ReadOnly public folder (no expiration and no password). I do not have any kind of enforced password or expiration but i’m not able to share a folder (within in a teams folder) without setting a password.
I have full authorization on the teams folder (also i am admin) still i cannot share it without a password.
The actual purpose would be to have public available documents that i can share (the WebRoot of httpd is /nextcloud installation so i cannot somehow mount internally the share to another directory.)

No, because Nextcloud follows its own structure. Public releases have the structure https://cloud.server.tld/s/share-id . This is e.g. team-folder-name/subfolder-name in Nextcloud. Alternatively, you can still use WebDAV. But that is a different story.

Or do you want External Storage? You can use e.g. Local to “mount” /path/on/server/outside-nextcloud to a Nextcloud top folder folder-name and use that folder in Nextcloud e.g. for users and groups but i think not teams.

So, my purpose is to make public access possible for a given location managed by nextcloud … but your mention of mounting gave me an idea to try to mount on the server the webdav location to /var/www/html/nexcloud/Public (given that the webroot is /var/www/html/nexcloud) and see if i can access that …

L.E. it does not work as anything under the nextcloud root is processed by nextcloud

Well. You could try to share the location /var/www/nextcloud/data/username/files/folder or /var/www/nextcloud/__groupfolders/number publicly somehow. But I do not recommend this. Above all, you should not share it writable, because Nextcloud does not recognise the changes outside Nextcloud or real WebDAV.

yeah, i do not think this is such a good idea … i think that i need to tell somehow to httpd with mod_rewrite that if the path is /public to present something else (so, the nextcloud php will not be used)

and yes, the only need is for ReadOnly

I think you can only solve the problem with a second web server or at least a second virtual web server. This can then provide the path I mentioned as required. Of course, you can also use WebDAV within this web server. Maybe you also need a reverse proxy.

actually it worked with alias …
so, while i have the webroot set to /var/www/html/nextcloud
i did /var/www/html/mypublic
and then did Alias "/mypublic" "/var/www/html/mypublic"
and i can access as a simple indexed directory https://myfqdn/mypublic even if https://myfqdn/ is the nextcloud installation

The only trick was to use something else than public as there is an public.php within nextcloud

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.