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

Nexus RAW Proxy Mishandles URLs with Query Parameters in Version 3.66.0-02 #588

Open
prabu001-tre opened this issue Feb 28, 2025 · 0 comments

Comments

@prabu001-tre
Copy link

We are currently using Sonatype Nexus Repository OSS version 3.66.0-02 and have encountered an issue with the RAW proxy repository functionality. Specifically, Nexus appears to incorrectly handle URLs containing query parameters, which is impacting our ability to proxy content effectively.

Problem Description

When configuring a RAW proxy repository with the remote storage URL set to https://epr.elastic.co/, a request to https://xxxxxxx/repository/xxxx/search?kibana.version=8.13.4 should ideally proxy to https://epr.elastic.co/search?kibana.version=8.13.4. However, Nexus strips the query parameter (?kibana.version=8.13.4) and proxies only to https://epr.elastic.co/search. This results in an incorrect response from the upstream server, as the query parameter is essential for retrieving the intended content.

Current Behavior

Request: https://xxxxxxxx/repository/xxxx/search?kibana.version=8.13.4
Proxied to: https://epr.elastic.co/search (missing ?kibana.version=8.13.4)
Expected: https://epr.elastic.co/search?kibana.version=8.13.4
Impact: The upstream server returns incorrect or incomplete data due to the missing query parameter.

Questions and Request

Is this a known limitation or bug in Nexus Repository OSS 3.66.0-02’s RAW proxy implementation? If so, has it been addressed in a later version?

Can this be fixed within the current version through configuration adjustments, a patch, or a workaround natively supported by Nexus?

Alternative Solutions: If a direct fix isn’t available, could you recommend a robust solution to ensure query parameters are preserved when proxying requests?

Additional Context

Nexus Version: Sonatype Nexus Repository OSS 3.66.0-02
Repository Type: RAW Proxy
Remote Storage URL: https://epr.elastic.co/
Example Request: https://xxxxxxxxxx/repository/xxxx/search?kibana.version=8.13.4

Workaround Attempted: We’ve bypassed Nexus by using an Nginx reverse proxy to forward requests directly to https://epr.elastic.co/search?kibana.version=8.13.4, but we’d prefer a native Nexus solution for consistency and caching benefits.

We’d greatly appreciate your insights or any recommended fixes to resolve this issue within Nexus itself

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

No branches or pull requests

1 participant