You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just installed the Nextcloud plugin, and while the admin UI works, actually trying to sign in to one of the listed Solid apps, or into Penny, doesn't seem to work. I'm supposed to just pass in the root of the Nextcloud instance as the IDP, correct?
I don't think it matters, but for completeness I should mention that this Nextcloud instance is running in my local network, not on the public internet. But I'm signing in to client-side apps, so AFAIK this should be fine.
Running it on a local instance should not be an issue for Penny. Could you take a peek what is happening in the request headers when calling openid-configuration?
Are there any errors in the errorlog happening?
The logs show the same message as in the screenshot:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://pi/.well-known/openid-configuration. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 301.
And indeed, I don't see any ACAO headers above, but I don't see any clues as to why they should be missing.
Hm, a 301 redirect is not what I would expect to see there - I would expect it to serve the well-known directly from the first URL. That feels like a nextcloud / webserver configuration issue to me.
My setup has this set of rewrites in the .htaccess in the root of the nextcloud installation:
Hmm, I'm running Nextcloud from the NixOS package, which indeed sets up a 301 redirect from well-known URLs other than carddav, caldav, acme-challenge and pki-validation to index.php. However, that does seem to follow the recommended configuration for Nginx, so if it's feasible, maybe it's best to support that as well?
In the meantime I can try to see if there's a way I can make it just be an alias instead of a redirect rule.
I think it should also be sufficient to add a cors header to the 301 redirect? So in before the 301 to index.php rule, adding an add_header ACAO rule would probably suffice. Bonus points for restricting it to only .well-known/openid-configuration and .well-known/solid.
Activity
ylebre commentedon Feb 14, 2025
Running it on a local instance should not be an issue for Penny. Could you take a peek what is happening in the request headers when calling openid-configuration?
Are there any errors in the errorlog happening?
Vinnl commentedon Feb 14, 2025
Request headers:
Response headers:
The logs show the same message as in the screenshot:
And indeed, I don't see any ACAO headers above, but I don't see any clues as to why they should be missing.
ylebre commentedon Feb 17, 2025
Hm, a 301 redirect is not what I would expect to see there - I would expect it to serve the well-known directly from the first URL. That feels like a nextcloud / webserver configuration issue to me.
My setup has this set of rewrites in the .htaccess in the root of the nextcloud installation:
Which looks to redirect any .well-known requests directly to the index.php. Maybe the nginx configuration needs something similar?
Vinnl commentedon Feb 18, 2025
Hmm, I'm running Nextcloud from the NixOS package, which indeed sets up a 301 redirect from well-known URLs other than carddav, caldav, acme-challenge and pki-validation to
index.php. However, that does seem to follow the recommended configuration for Nginx, so if it's feasible, maybe it's best to support that as well?In the meantime I can try to see if there's a way I can make it just be an alias instead of a redirect rule.
ylebre commentedon Feb 25, 2025
I think it should also be sufficient to add a cors header to the 301 redirect? So in before the 301 to index.php rule, adding an add_header ACAO rule would probably suffice. Bonus points for restricting it to only .well-known/openid-configuration and .well-known/solid.