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

Calendar entries from Baikal dont show up when using Reverse Proxy #173

Open
simonl169 opened this issue May 6, 2024 · 5 comments
Open

Comments

@simonl169
Copy link

Hi!

I am using MMDL together with Baikal as CalDav. I encountered a strange issue where the entries form Baikal dont show up in the Calendar when I acces MMDL via Nginx Proxy Managaer Reverse Proxy. If I access the container directly via IP and Port, it works flawlessly.
However, I can still create new entries which then show up on my second client (iPhone Standard Calendar App). Maybe this is more of a problem with the Reverse Proxy, but dunno

Here some more Infos:
Baikal on Docker, via Reverse Proxy
MMDL on Docker, via Reverse Proxy
Nginx Proxy Manager as Reverse Proxy
.well-knonw Redirects etc are set for Baikal on NPM, works fine with iPhone and Android
Using MariaDB as Database since I couldnt get mysql running

@intri-in
Copy link
Owner

intri-in commented May 6, 2024

This sounds like an issue with the reverse proxy configuration.

It's weird that you can make write requests, but not read requests.

When accessing through the Nginx proxy, can MMDL find your calendars?

Maybe the fetch request is being blocked at the proxy end? Can you check the logs of NPM and see if MMDL makes a request and what status code you find?

Also, when you add your Baikal account to MMDL, instead of using "http://yourdomain.example.com/" in Caldav server Url field, try using "http://yourdomain.example.com/dav.php" as the URL, and see if the issue resolves.

@simonl169
Copy link
Author

simonl169 commented May 6, 2024

When accessing through the Nginx proxy, can MMDL find your calendars?

Yes, I can find the calendars and even set it up as a new account

Maybe the fetch request is being blocked at the proxy end? Can you check the logs of NPM and see if MMDL makes a request and what status code you find?

Working on that

Also, when you add your Baikal account to MMDL, instead of using "http://yourdomain.example.com/" in Caldav server Url field, try using "http://yourdomain.example.com/dav.php" as the URL, and see if the issue resolves.

Yes, I am already using this, the other option would not work

@simonl169
Copy link
Author

[06/May/2024:21:12:23 +0200] - 207 207 - PROPFIND https yourdomain.com "/dav.php/principals/User1/" [Client 192.168.176.1] [Length 464] [Gzip -] [Sent-to 192.168.42.107] "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)" "-"
[06/May/2024:21:12:23 +0200] - 207 207 - PROPFIND https yourdomain.com "/dav.php/calendars/User1/" [Client 192.168.176.1] [Length 3149] [Gzip -] [Sent-to 192.168.42.107] "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)" "-"
[06/May/2024:21:12:23 +0200] - 207 207 - PROPFIND https yourdomain.com "/dav.php/calendars/User1/default/" [Client 192.168.176.1] [Length 1118] [Gzip -] [Sent-to 192.168.42.107] "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)" "-"
[06/May/2024:21:12:23 +0200] - 207 207 - PROPFIND https yourdomain.com "/dav.php/calendars/User1/NewCalendar/" [Client 192.168.176.1] [Length 1117] [Gzip -] [Sent-to 192.168.42.107] "node-fetch/1.0 (+https://github.com/bitinn/node-fetch)" "-"

This is the log after I click "Sync" in the menu, does seem okay

@intri-in
Copy link
Owner

intri-in commented May 7, 2024

Interesting. The PROPFIND requests are there, but there are no REPORT requests for the actual objects (events/tasks).

I will investigate this, meanwhile perhaps you can try MMDL with the IP address directly.

@simonl169
Copy link
Author

simonl169 commented May 8, 2024

Just for completeness, here is my docker-compose.yml

volumes:
  data:
networks:
  app-tier:
services:
  app:
    image: intriin/mmdl:latest
    ports:
      - 9300:3000
    depends_on:
      - db 
    restart: always
    networks:
      - app-tier  
    environment:
      DB_HOST: db
      DB_USER: user
      DB_PASS: password
      DB_PORT: 3306
      DB_NAME: sample_install_mmdm
      DB_CHARSET: "utf8mb4"
      DB_COLLATE: "utf8mb4_0900_ai_ci"
      AES_PASSWORD: PASSWORD


  db:
    image: mariadb
    networks:
      - app-tier  
    volumes:
      - data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: sample_install_mmdm
      MYSQL_USER: user
      MYSQL_PASSWORD: password
    ports:
      - "3306:3306"

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

2 participants