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

Http -> Https redirects when path is specified redirrect incorrectly #262

Open
clarkbains opened this issue Aug 22, 2020 · 0 comments
Open

Comments

@clarkbains
Copy link

If I have a route where pihole.mydomain.com proxies to 192.168.2.45/admin, with ssl enabled, and I try to hit http://pihole.mydomain.com, it will send back a 302 to https://pihole.mydomain.com/admin. My browser then follows this, which goes back through the reverse proxy, and ends up hitting my pihole at 192.168.2.45/admin/admin. This results in an error, since the admin interface is at 192.16 8.2.45/admin.

I expect that when the redirect happens, it should be using the path from the original request, not from the proxied request.

Redirect specified is redbird.register("pihole.xxxxxxxxx.com", "192.168.2.45", {ssl:true});
redbird was started with

new require('redbird')({
		port: 80,
		secure: true,
		ssl: [
			{
				port: 443,
				key: 'xxxxxxx',
				cert: 'xxxxxxx',
			}
		]
	})

Here is the output of curl. I'm using the Host header hack since I don't have dns pointing at my development server

curl 'http://pihole.xxxxxxxxx.com/index.php?login' -vvv
*   Trying 192.168.2.46:80...
* Connected to pihole.xxxxxxxxx.com (192.168.2.46) port 80 (#0)
> GET /index.php?login HTTP/1.1
> Host: pihole.xxxxxxxxx.com
> User-Agent: curl/7.71.1
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 302 Found
< Location: https://pihole.xxxxxxxxx.com/admin/index.php?login
< Date: Sat, 22 Aug 2020 00:03:11 GMT
< Connection: keep-alive
< Transfer-Encoding: chunked
< 
* Connection #0 to host pihole.xxxxxxxxx.com left intact

When that request is made, it will go through redbird again and try and hit my pihole with the path http://192.168.2.45/admin/admin/index.php?login, and it should instead be http://192.168.2.45/admin/index.php?login

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

Successfully merging a pull request may close this issue.

1 participant