Tutor & Nginx Proxy Manager (External web proxy)

I’ve installed Tutor via the docker setup, but I’m having issues getting it running behind my web proxy (I host other web services on the same IP/domain)
I have run “tutor config save --set ENABLE_WEB_PROXY=false --set CADDY_HTTP_PORT=81” and forwarded lms.domain.com and lmsadmin.domain.com to the internal IP & port 81
I think my issue lies here: “You should set up a reverse proxy to localhost:CADDY_HTTP_PORT from the following hosts: LMS_HOST, PREVIEW_LMS_HOST, CMS_HOST, as well as any additional host exposed by your plugins.”
I’m not sure what forwarding to these hosts means, so I basically just have NGINX Proxy manager forwarding the traffic.
Links to images do show https, ex: https://lms.domain.com/asset-v1:Packt+101+1+type@asset+block@images_course_image.jpg
Right now my main issue is when I attempt to open a course I get taken to https://lms.domain.com/None/course/course-v1:Packt+101+1/home and a page not found error.
I’d appreciate any assistance I could get, I’m sure it’s due to my lack of understanding the host but I’ve searched here and haven’t found a way to allow those.

Please share the Tutor version you are using.

It looks like you have not enabled the MFE plugin.

You can take a look at your Caddyfile at this location $(tutor config printroot)/env/apps/caddy/Caddyfile to find the configuration for those hosts.

1 Like

Until version 10 of Tutor, Regis provided configuration files for using Apache as well as Nginx as proxy.

Please take a look at:

and

I myself am using Apache as proxy, the relevant lines in config.yml:

CADDY_HTTP_PORT: 127.0.0.1:444
CMS_HOST: studio.domain.tld
ENABLE_HTTPS: true
ENABLE_WEB_PROXY: false
LMS_HOST: domain.tld

and my complete reverse proxy setup (maybe it’ll help you) I described here under point 2:

1 Like

This may have been part of the issue, I was getting an error when running like the “tutor config save” regarding a dependency for MFE.
I have reinstalled Tutor on Debian instead of Ubuntu and did not run into the same issue.

Here’s the steps I took to install in case they help

  1. Install Debian 5.10.127-2
  2. Install Docker Engine following Install Docker Engine on Debian | Docker Documentation
  3. Added my user to the docker group
    sudo groupadd docker | sudo usermod -aG docker $USER
  4. Installed Tutor v14.0.4 from package following Installing Tutor — Tutor documentation
  5. Rebooted !important
  6. Ran tutor config save --interactive
    Prod, & yes to SSL
    LMS: lms.domain.com
    CMS: lmsadmin.domain.com
  7. Ran tutor config save --set ENABLE_WEB_PROXY=false ENABLE_HTTPS=true CADDY_HTTP_PORT=81
  8. Ran tutor local quickstart
  9. Let it go through it’s things
  10. Added lms.domain.com, lmsadmin.domain.com, and apps.lms.domain.com to my Nginx Proxy Manager docker on UNRAID, pointed to HTTP://SERVERIP:81
  11. Generated a certificate for these sites, and verified external connectivity and functionality!
    :tada: :partying_face: :tada:
3 Likes