[BUG] Web: URL containing '+' character is rejected by IIS reverse proxy #268

Closed
opened 2026-02-04 19:14:01 +03:00 by OVERLORD · 4 comments
Owner

Originally created by @usikpavel on GitHub (Sep 8, 2022).

I'm using an IIS as reverse proxy for redirecting requests to Immich-server. IIS has a default rejecting behaviour (with HTTP Error 404.11) for + character described here: IIS7 rejecting URLs containing +

Currently, I found only one problem URL: /_app/immutable/assets/+layout-c9d87204.css. I'm allowing this URL manually by configuring <alwaysAllowedUrls> option, but file name is changing in every build, and every time Immich-web has updated I need update this option.

Expected behavior
Remove + character from +layout-c9d87204.css filename or replace it with some valid character.

System

  • Server Version: v1.28.0
Originally created by @usikpavel on GitHub (Sep 8, 2022). I'm using an IIS as reverse proxy for redirecting requests to Immich-server. IIS has a default rejecting behaviour (with HTTP Error 404.11) for `+` character described here: [IIS7 rejecting URLs containing +](https://blogs.iis.net/thomad/iis7-rejecting-urls-containing) Currently, I found only one problem URL: `/_app/immutable/assets/+layout-c9d87204.css`. I'm allowing this URL manually by configuring `<alwaysAllowedUrls>` option, but file name is changing in every build, and every time Immich-web has updated I need update this option. **Expected behavior** Remove `+` character from `+layout-c9d87204.css` filename or replace it with some valid character. **System** - Server Version: `v1.28.0`
Author
Owner

@bo0tzz commented on GitHub (Sep 8, 2022):

Can you not turn off this filter feature for the entire Immich proxy?

@bo0tzz commented on GitHub (Sep 8, 2022): Can you not turn off this filter feature for the entire Immich proxy?
Author
Owner

@usikpavel commented on GitHub (Sep 8, 2022):

Yes, I can totally disable this filter by allowDoubleEscaping option. But there are security reasons why this behaviour was introduced. I'm not a security expert, I only can give a following explanation: https://stackoverflow.com/questions/1453218/is-enabling-double-escaping-dangerous#comment1300728_1453287

@usikpavel commented on GitHub (Sep 8, 2022): Yes, I can totally disable this filter by `allowDoubleEscaping` option. But there are security reasons why this behaviour was introduced. I'm not a security expert, I only can give a following explanation: [https://stackoverflow.com/questions/1453218/is-enabling-double-escaping-dangerous#comment1300728_1453287](https://stackoverflow.com/questions/1453218/is-enabling-double-escaping-dangerous#comment1300728_1453287)
Author
Owner

@alextran1502 commented on GitHub (Sep 8, 2022):

The + symbol is the convention of the web framework. There is not a way to actually remove it

@alextran1502 commented on GitHub (Sep 8, 2022): The `+` symbol is the convention of the web framework. There is not a way to actually remove it
Author
Owner

@usikpavel commented on GitHub (Sep 8, 2022):

Ок, understand.

@usikpavel commented on GitHub (Sep 8, 2022): Ок, understand.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#268