Comments (15)
Hi @rubbo898,
In middlewares-secure-headers.headers remove the following lines accessControlAllowMethods= ["GET", "OPTIONS", "PUT"] accessControlMaxAge = 100
remove middleware-rate-limit all together depending on the library size, with the new lazy load code that was introduced a little bit ago this might not be needed any more. The rate limit can make it so that the covers show up as invalid
I (@typhooncarr) GOT IT!
Here below my configuration, I'm 100% sure it's not the optimal one but at least it works:
ABS container labels:
traefik.enable=true
traefik.http.services.JAshelf-svc.loadbalancer.passhostheader=true
traefik.http.routers.JAshelf-rtr.entrypoints=https
traefik.http.routers.JAshelf-rtr.rule=Host(`xxxxxxxxxx`)
traefik.http.routers.JAshelf-rtr.service=JAshelf-svc
traefik.http.services.JAshelf-svc.loadbalancer.server.port=80
traefik.http.routers.JAshelf-rtr.middlewares=chain-no-auth-jashelf@file
middlewares-chains.toml file:
[http.middlewares]
[http.middlewares.chain-no-auth-jashelf]
[http.middlewares.chain-no-auth-jashelf.chain]
middlewares = [ "middlewares-secure-headers", "middlewares-sslheader"]
middlewares-chains.toml file:
[http.middlewares]
[http.middlewares.middlewares-secure-headers]
[http.middlewares.middlewares-secure-headers.headers]
hostsProxyHeaders = ["X-Forwarded-Host"]
sslRedirect = true
stsSeconds = 63072000
stsIncludeSubdomains = true
stsPreload = true
forceSTSHeader = true
contentTypeNosniff = true
browserXssFilter = true
referrerPolicy = "same-origin"
featurePolicy = "camera 'none'; geolocation 'none'; microphone 'none'; payment 'none'; usb 'none'; vr 'none';"
customFrameOptionsValue = "allow-from https:jimmyproject.tech" #
[http.middlewares.middlewares-secure-headers.headers.sslproxyheaders]
X-Forwarded-Proto = "https"
[http.middlewares.middlewares-secure-headers.headers.customResponseHeaders]
X-Robots-Tag = "none,noarchive,nosnippet,notranslate,noimageindex,"
server = ""
[http.middlewares.middlewares-sslheader.headers]
[http.middlewares.middlewares-sslheader.headers.customrequestheaders]
X-Forwarded-Proto = "https"
@typhooncarr if you have suggestion on how to improve it please let me/us know! Thanks for your time
from audiobookshelf-app.
I'm not sure if you saw, but there was a bug I fixed last week with the socket not re-connecting.
The web socket connection is causing a lot of problems on mobile for some reason. The app is stuck in limbo at the moment while pending approval for android auto, so after that I can see about adding some additional log or info about the status of the connection.
If it's the one about Caddy yes! There is no hurry, my VPN is a great workaround so no service disruption by my side π
Waiting for AA!! πΏπ»
from audiobookshelf-app.
Hi @rubbo898,
In middlewares-secure-headers.headers remove the following lines
accessControlAllowMethods= ["GET", "OPTIONS", "PUT"]
accessControlMaxAge = 100
remove middleware-rate-limit all together depending on the library size, with the new lazy load code that was introduced a little bit ago this might not be needed any more. The rate limit can make it so that the covers show up as invalid
from audiobookshelf-app.
Using the browser on your phone are you able to connect and play audiobooks using your domain name and reverse proxy?
It sounds like a certificate issue with the android app. There was an issue resolved recently to allow self signed certificates #28.
Any more info you can provide like error messages?
from audiobookshelf-app.
I just came across a stupid bug where if I enter the IP address with "http" in front it won't connect.
This must be a problem with the logic that checks if it should prepend "http". Doesn't sound like this is your issue, but just want to throw it out there.
from audiobookshelf-app.
Same here! I've tried to make the App working with FQDN with no luck.
Looking around I've found a suggestion to add the following middleware (not sure is the same scenario!):
[http.middlewares.middlewares-sslheader.headers]
[http.middlewares.middlewares-sslheader.headers.customrequestheaders]
X-Forwarded-Proto = "https"
Here below my Traefik v2.4.7 DEBUG logs:
2021-11-16T08:58:52.854879129Z time="2021-11-16T09:58:52+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.105.127\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6aef85216ede3751-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/95.0.4638.74 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.105.127\"],\"X-Forwarded-Host\":[\"[PRIVATE]"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"[PRIVATE]",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:50686\",\"RequestURI\":\"/ping\",\"TLS\":null}"
2021-11-16T08:58:52.854973773Z time="2021-11-16T09:58:52+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" ForwardURL="http://172.19.0.24:80" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.105.127\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6aef85216ede3751-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/95.0.4638.74 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.105.127\"],\"X-Forwarded-Host\":[\"[PRIVATE]"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"[PRIVATE]",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:50686\",\"RequestURI\":\"/ping\",\"TLS\":null}"
2021-11-16T08:58:52.859425796Z time="2021-11-16T09:58:52+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.105.127\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6aef85216ede3751-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/95.0.4638.74 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.105.127\"],\"X-Forwarded-Host\":[\"[PRIVATE]\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"[PRIVATE]\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:50686\",\"RequestURI\":\"/ping\",\"TLS\":null}"
While from audiobookshelf logs I can only see a ping:
[2021-11-16T08:58:52.857Z] INFO: Recieved ping
[2021-11-16T08:58:21.173Z] INFO: Recieved ping
from audiobookshelf-app.
I'm not sure if you saw, but there was a bug I fixed last week with the socket not re-connecting.
The web socket connection is causing a lot of problems on mobile for some reason. The app is stuck in limbo at the moment while pending approval for android auto, so after that I can see about adding some additional log or info about the status of the connection.
from audiobookshelf-app.
Using the browser on your phone are you able to connect and play audiobooks using your domain name and reverse proxy?
It sounds like a certificate issue with the android app. There was an issue resolved recently to allow self signed certificates #28.
Any more info you can provide like error messages?
I can connect through the Traefik reverse proxy in a browser. Unfortunately there's no error messages I can see to share. When I enter the domain in the Sever Address field it's accepted, but when I enter credentials I get a red box that says "Request Failed" I will try the middleware adjustment suggested by @rubbo898
from audiobookshelf-app.
I've just tried with the v0.9.25-beta, nothing changed:
ABS correctly receive ping when you enter the domain (as highlighted by @kulps)
today at 11:16:13 [2021-11-21T10:16:13.827Z] INFO: Recieved ping
today at 11:16:47 [2021-11-21T10:16:47.848Z] INFO: Recieved ping
As far as I understand (very little) Traefik handle the request and correctly forward it to ABS container:
today at 11:16:13 time="2021-11-21T11:16:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192953b9c53745-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.42\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.42:9494\",\"RequestURI\":\"/ping\",\"TLS\":null}"
today at 11:16:13 time="2021-11-21T11:16:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192953b9c53745-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.42\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.42:9494\",\"RequestURI\":\"/ping\",\"TLS\":null}" ForwardURL="http://172.19.0.24:80"
today at 11:16:13 time="2021-11-21T11:16:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192953b9c53745-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.42\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.42:9494\",\"RequestURI\":\"/ping\",\"TLS\":null}"
today at 11:16:47 time="2021-11-21T11:16:47+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192a286f393754-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:52818\",\"RequestURI\":\"/ping\",\"TLS\":null}"
today at 11:16:47 time="2021-11-21T11:16:47+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192a286f393754-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:52818\",\"RequestURI\":\"/ping\",\"TLS\":null}" ForwardURL="http://172.19.0.24:80"
today at 11:16:47 time="2021-11-21T11:16:47+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.109.48\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b192a286f393754-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.109.48\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"162.158.129.130\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"162.158.129.130:52818\",\"RequestURI\":\"/ping\",\"TLS\":null}"
So it should be the authentication step that is failing!
Last edit I swear: not finding any log in Traefik @advplyr do you think it's possible that the authentication is "stuck" within the Android App? Otherwise I should find further entries in Traefik debug logs, am I wrong?
from audiobookshelf-app.
I was thinking this was failing when checking the server address, but it sounds like it is failing when you are entering the username and password. @rubbo898 are you also seeing "Request Failed" when submitting credentials?
from audiobookshelf-app.
I was thinking this was failing when checking the server address, but it sounds like it is failing when you are entering the username and password. @rubbo898 are you also seeing "Request Failed" when submitting credentials?
I couldn't find any entry except the ones above, asap I'll double check
from audiobookshelf-app.
v0.9.27-beta
is live on the play store where I added some additional error messages. I realized there was only a generic error message getting printed.
Hopefully that can give us a little more to go off of.
from audiobookshelf-app.
You need to turn off CORS and rate limiting for the endpoint
docker-compose labels:
- "traefik.enable=true"
## HTTP Routers
- "traefik.http.routers.abs-rtr.entrypoints=https"
- "traefik.http.routers.abs-rtr.rule=Host(abs.xxxxxxx.com
)"
## Middlewares
- "traefik.http.routers.abs-rtr.middlewares=secure-chain-nolimit@file"
## HTTP Services
- "traefik.http.routers.abs-rtr.service=abs-svc"
- "traefik.http.services.abs-svc.loadbalancer.server.port=80"
- "traefik.http.services.abs-svc.loadbalancer.passhostheader=true"
secure-chain-nolimit.yml
http:
middlewares:
secure-chain-nolimit:
chain:
middlewares:
- secure-headers-nocors
- authelia
- errorpages
- nofloc
secure-headers-nocors.yml
http:
middlewares:
secure-headers-nocors:
headers:
hostsProxyHeaders:
- "X-Forwarded-Host"
frameDeny: true
sslRedirect: true
sslProxyHeaders:
X-Forwarded-Proto: "https"
stsSeconds: 63072000
stsIncludeSubdomains: true
stsPreload: true
forceSTSHeader: true
customFrameOptionsValue: "allow-from https:xxxxxxx.com"
contentTypeNosniff: true
browserXssFilter: true
referrerPolicy: "same-origin"
permissionsPolicy: "camera=(), microphone=(), geolocation=(), payment=(), usb=(), vr=()"
customResponseHeaders:
X-Robots-Tag: "none,noarchive,nosnippet,notranslate,noimageindex,"
customRequestHeaders:
X-Forwarded-Proto: "https"
from audiobookshelf-app.
Hi @typhooncarr, I've tried to follow your advice but nothing changed.
Here below my Traefik configurations
docker run labels:
traefik.enable=true
traefik.http.services.JAshelf-svc.loadbalancer.passhostheader=true
traefik.http.routers.JAshelf-rtr.entrypoints=https
traefik.http.routers.JAshelf-rtr.rule=Host(`xxxxxxxxxx`)
traefik.http.routers.JAshelf-rtr.service=JAshelf-svc
traefik.http.services.JAshelf-svc.loadbalancer.server.port=80
traefik.http.routers.JAshelf-rtr.middlewares=chain-no-auth-jashelf@file
middlewares-chains.toml file:
[http.middlewares]
[http.middlewares.chain-no-auth-jashelf]
[http.middlewares.chain-no-auth-jashelf.chain]
middlewares = [ "middlewares-secure-headers", "middlewares-sslheader"]
middlewares-chains.toml file:
[http.middlewares]
[http.middlewares.middlewares-rate-limit]
[http.middlewares.middlewares-rate-limit.rateLimit]
average = 100
burst = 50
[http.middlewares.middlewares-secure-headers]
[http.middlewares.middlewares-secure-headers.headers]
accessControlAllowMethods= ["GET", "OPTIONS", "PUT"]
accessControlMaxAge = 100
hostsProxyHeaders = ["X-Forwarded-Host"]
sslRedirect = true
stsSeconds = 63072000
stsIncludeSubdomains = true
stsPreload = true
forceSTSHeader = true
contentTypeNosniff = true
browserXssFilter = true
referrerPolicy = "same-origin"
featurePolicy = "camera 'none'; geolocation 'none'; microphone 'none'; payment 'none'; usb 'none'; vr 'none';"
customFrameOptionsValue = "allow-from https:xxxxxxxx" #
[http.middlewares.middlewares-secure-headers.headers.sslproxyheaders]
X-Forwarded-Proto = "https"
[http.middlewares.middlewares-secure-headers.headers.customResponseHeaders]
X-Robots-Tag = "none,noarchive,nosnippet,notranslate,noimageindex,"
server = ""
[http.middlewares.middlewares-sslheader.headers]
[http.middlewares.middlewares-sslheader.headers.customrequestheaders]
X-Forwarded-Proto = "https"
Am I missing something?
v0.9.27-beta
is live on the play store where I added some additional error messages. I realized there was only a generic error message getting printed. Hopefully that can give us a little more to go off of.
Same outcomes from the logs
ABS:
today at 12:19:13 [2021-11-23T11:19:13.190Z] INFO: Recieved ping
Traefik:
today at 12:19:13 time="2021-11-23T12:19:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.106.228\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b2a00552f66e907-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.106.228\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"188.114.102.36\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"188.114.102.36:24498\",\"RequestURI\":\"/ping\",\"TLS\":null}"
today at 12:19:13 time="2021-11-23T12:19:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.106.228\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b2a00552f66e907-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.106.228\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"188.114.102.36\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"188.114.102.36:24498\",\"RequestURI\":\"/ping\",\"TLS\":null}" ForwardURL="http://172.19.0.24:80"
today at 12:19:13 time="2021-11-23T12:19:13+01:00" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/ping\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"application/json, text/plain, */*\"],\"Accept-Encoding\":[\"gzip\"],\"Accept-Language\":[\"it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7\"],\"Cdn-Loop\":[\"cloudflare\"],\"Cf-Connecting-Ip\":[\"5.90.106.228\"],\"Cf-Ipcountry\":[\"IT\"],\"Cf-Ray\":[\"6b2a00552f66e907-MXP\"],\"Cf-Visitor\":[\"{\\\"scheme\\\":\\\"https\\\"}\"],\"If-None-Match\":[\"W/\\\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\\\"\"],\"Origin\":[\"http://localhost\"],\"Referer\":[\"http://localhost/\"],\"Sec-Fetch-Dest\":[\"empty\"],\"Sec-Fetch-Mode\":[\"cors\"],\"Sec-Fetch-Site\":[\"cross-site\"],\"User-Agent\":[\"Mozilla/5.0 (Linux; Android 11; IN2013 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.45 Mobile Safari/537.36\"],\"X-Forwarded-For\":[\"5.90.106.228\"],\"X-Forwarded-Host\":[\"xxxxxxxx\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"b8edaee95b5f\"],\"X-Real-Ip\":[\"188.114.102.36\"],\"X-Requested-With\":[\"com.audiobookshelf.app\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"xxxxxxxx\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"188.114.102.36:24498\",\"RequestURI\":\"/ping\",\"TLS\":null}"
from audiobookshelf-app.
I just setup a new install with traefik and didn't need to do any of this.
from audiobookshelf-app.
Related Issues (20)
- [Bug]: Android: Switching user issues HOT 2
- [Enhancement]: "Clips" feature for settings bookmarks and adding notes
- [Enhancement]: to speed up the start of playback HOT 2
- [Enhancement]: "What's New" pop-up
- [Bug]: Can't download audiobooks HOT 1
- [Bug]: Cast Playrate Wrong HOT 2
- [Enhancement]: Continue Playing Audiobook When Casting
- [Enhancement]: Swipe-to-refresh in main tabs
- [Enhancement]: Auto-duck currently playing media when notification is received HOT 1
- [Enhancement]: Car mode HOT 5
- [Enhancement]: Pause, and alert, on muted volume
- [Bug]: Intermittent listening session sync issues HOT 2
- [Enhancement]: Allow streaming podcasts directly from source to the app, without downloading to server HOT 2
- [Enhancement]: Bookshelf loading indicators as toast notifications
- [Enhancement]: Better control over what information is displayed on Bluetooth screen
- [Bug]: Seek times are too short HOT 1
- [Bug]: Autosleep timer engaging outside of set time. HOT 3
- [Enhancement]: Shake to rewind HOT 7
- [Enhancement]: Change "Lock Player" behaviour HOT 8
- [Bug]: Cannot open downloaded epub files HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from audiobookshelf-app.