Immich works, but only in single browser

Hi, I created my immich containers, and populated library with everything. Everything worked until I tried to access immich from remote host, my phone on data. I am using external nginx reverse proxy. It registers this request when this bug happens: GET /auth/login/__data.json?x-sveltekit-invalidated=1 (long version)
[IP] - - [17/Oct/2023:01:11:05 +0200] "GET /auth/login HTTP/2.0" 200 14016 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0.1 Mobile/15E148 Safari/604.1"
[IP] - - [17/Oct/2023:01:11:05 +0200] "GET /auth/login/__data.json?x-sveltekit-invalidated=1 HTTP/2.0" 200 144 "https://immich.domain.com/auth/login" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0.1 Mobile/15E148 Safari/604.1"
[IP] - - [17/Oct/2023:01:11:05 +0200] "GET /auth/login HTTP/2.0" 200 14016 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0.1 Mobile/15E148 Safari/604.1"
[IP] - - [17/Oct/2023:01:11:05 +0200] "GET /auth/login/__data.json?x-sveltekit-invalidated=1 HTTP/2.0" 200 144 "https://immich.domain.com/auth/login" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0.1 Mobile/15E148 Safari/604.1"
basically, I get redirected to immich.domain.com/auth/login, but the page is all black. Same thing happens in Google Chrome, Edge, and in Chromium incognito. My mobile app works, from remote IP(data) too, and my Chromium browser works too I used Chromium for all the configurations and triage and stuff. I have -I think- all the proxy headers set as it was in the immich repo My guess is this may be about cookies? Idk I deleted all immich cookies from Chromium and it still works no problem. I switched a profile in Chromium, it does NOT work. I uploaded my proxy config, and my compose. Here are all immich-web container logs
Listening on 0.0.0.0:3000
[hooks.server.ts]:handleError Not found: /apple-touch-icon-precomposed.png
[hooks.server.ts]:handleError Not found: /apple-touch-icon.png
[hooks.server.ts]:handleError Not found: /favicon.ico
Listening on 0.0.0.0:3000
[hooks.server.ts]:handleError Not found: /apple-touch-icon-precomposed.png
[hooks.server.ts]:handleError Not found: /apple-touch-icon.png
[hooks.server.ts]:handleError Not found: /favicon.ico
Do you have ideas? Is it related to headers maybe? Some of them are enforced by other applications behind my reverse proxy.
6 Replies
jerkyman
jerkymanOP2y ago
Hmm for some reason I cannot upload my docker compose file
jrasm91
jrasm912y ago
I cannot access you subdomain conf either.
jerkyman
jerkymanOP2y ago
pastebin it is then
jerkyman
jerkymanOP2y ago
Pastebin
proxy conf - Pastebin.com
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Pastebin
docker compose - Pastebin.com
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
jrasm91
jrasm912y ago
you are using a custom /api path? This is probably wrong, and it doesn't line up with the value in your nginx config:
PUBLIC_IMMICH_SERVER_URL: https://immich.${HOST}
PUBLIC_IMMICH_SERVER_URL: https://immich.${HOST}
location ~ (/immich-web)?/api {
location ~ (/immich-web)?/api {
Also not sure if you upstream app variables will work the way you think they will. There are some documented issues with them: https://discord.com/channels/979116623879368755/1061797416522756176/1061813371344793650
jerkyman
jerkymanOP2y ago
I added PUBLIC_IMMICH_SERVER_URL because I was out of options. I had it without that variable and it was the same situation since it said "PUBLIC" I figured it is URL that is seen "from outside", not the docker host. To be clear, I assigned this value from my nginx config: server_name immich.domain.com; I have used some apps, that required a variable like that eg. your-spotify This should be clarified in documentation Yes, it was breaking my balls for a whole day, finally I figured, that those variables must be before rewrite command. Otherwise nothing works. The same thing must have happened to the guy you mentioned OMG this is it, excuse me for my rant. I shall address it to someone responsible for documentation. Apparently PUBLIC_IMMICH_SERVER_URL does not make any difference whether it is set or not. the ~ (/immich-web)? condition was totally ruining it Tank you a whole lot. Everything now works as intended

Did you find this page helpful?