Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update getTestUrls add missing url schemes #45740

Closed
wants to merge 2 commits into from

Conversation

Sprinterfreak
Copy link

Prepend url scheme to trusted_domains entries ensures valid domains

Relates #45087
Resolves #45724

Signed-off-by: Jan-Jonas Sämann janjonas@gmail.com

Prepend url scheme to trusted_domains entries ensures valid domains

Relates #45087  #45724

Signed-off-by: Jan-Jonas Sämann <janjonas@gmail.com>
Copy link
Member

@joshtrichards joshtrichards left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The later call to getAbsoluteURL() already handles adding the scheme. If it's not, something else is going on here I think...

What is $testUrls getting populated with in your environment (prior to your change)?

@kesselb
Copy link
Contributor

kesselb commented Jun 10, 2024

The later call to getAbsoluteURL() already handles adding the scheme.

Not for the trusted_domains, only the url.

I hope that most installations are using https://, but we should not hardcode it and rather use the value from the request object if available.

This needs a bit more rework especially to also make it work for the cli runs or skip the trusted_domains for cli runs because we cannot figure out, unless overwriteprocotol is given, what protocol to use and therefore should only use the cli.overwrite.url.

@Sprinterfreak
Copy link
Author

Since the test handles multiple domains and can in theory run from cli, there is not always a request context from which we can infer the 'used' scheme. Also, the result should be somewhat consistent regardless from where it is triggered.
It is of course a good idea to use overwriteprotocol's value if given.

I've found the getTestUrls function to be the most convinient place to fixup values. If there is any better place, just see this as a proof of concept.
I had previously added some substr checks just before the request itself and found it to be not the right solution but it leaves getTestUrls returning invalid values.

Any thaughts?

Copy link
Contributor

Hello there,
Thank you so much for taking the time and effort to create a pull request to our Nextcloud project.

We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process.

Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6

Thank you for contributing to Nextcloud and we hope to hear from you soon!

(If you believe you should not receive this message, you can add yourself to the blocklist.)

This was referenced Jul 30, 2024
This was referenced Aug 5, 2024
@skjnldsv skjnldsv mentioned this pull request Aug 13, 2024
@skjnldsv skjnldsv modified the milestones: Nextcloud 30, Nextcloud 31 Aug 14, 2024
@Sprinterfreak
Copy link
Author

Fixed by other commit 48c807e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: isHtaccessWorking check fails on IDN domains
5 participants