Apply sentence case to all H1s in docs/en/ and remove redundant "FreshRSS" from titles where the docs site context already implies it. Align the three section index titles to "Administrator/Developer/User manual", matching the existing root H1 "FreshRSS manual (English)". Add missing H1s to two pages that were silently dropped from the sidebar: the user FAQ and the Caddy reverse proxy page. The sidebar template uses page.title (derived from H1 by jekyll-titles-from-headings), so pages without an H1 had title=nil and were skipped. Update sidebar parent labels in docs_nav.html and the chapter list in en/index.md to use the new "* manual" naming. Update link text in section indexes that referenced the old H1s. Bundle two grammar fixes encountered along the way: "an User Interface" -> "a user interface", and drop the awkward "the" in "Configuring the email address validation". EN only. No filenames, URLs, or anchor targets changed (anchors come from H2 and below, which are untouched). FR is generated from EN via po4a and will be regenerated separately. Co-authored-by: Bjørn A. Andersen <polybjorn@users.noreply.github.com>
3.3 KiB
Using Caddy as a reverse proxy
How to configure Caddy as a reverse proxy to serve FreshRSS through a subfolder or subdomain
Using Caddy as a Reverse Proxy with a Subfolder
To set up FreshRSS behind a reverse proxy with Caddy and using a subfolder, follow these steps:
-
Configure Caddyfile:
Update your Caddyfile with the following configuration:
example.com { redir /subfolder /subfolder/ # Just to redirect users that are missing the closing slash to the correct page handle_path /subfolder/* { # Actually configures the used subfolder (also internally strips the path prefix) reverse_proxy freshrss:80 { # Enables the reverse proxy for the configured program:port header_up X-Forwarded-Prefix "/subfolder" # Sets the correct header for the login cookies } } }Replace
example.comwith your actual domain and the four instances ofsubfolderwith the subfolder where you want FreshRSS to be hosted.NOTE: Ensure that the Docker container name for FreshRSS (freshrss in this example) matches the name used in the Caddyfile configuration.
-
Update FreshRSS Configuration:
Open the
config.phpfile in your FreshRSS installation and update thebase_urlparameter to match the subfolder configuration:'base_url' => 'https://example.com/subfolder',Replace
example.comwith your actual domain andsubfolderwith the same subfolder name specified in the Caddyfile. -
Restart Caddy and FreshRSS:
Restart Caddy to apply the configuration changes:
docker compose restart caddyRestart FreshRSS to ensure that it recognizes the new base URL:
docker compose restart freshrss -
Access FreshRSS:
FreshRSS should now be accessible at
https://example.com/subfolder.
Using Caddy as a Reverse Proxy with a Subdomain
To set up FreshRSS behind a reverse proxy with Caddy and using a subdomain, follow these steps:
-
Configure Caddyfile:
Update your Caddyfile with the following configuration:
subdomain.example.com { # The url Caddy should serve the proxy on reverse_proxy freshrss:80 # Enables the reverse proxy for the configured program:port }Replace
example.comwith your actual domain andsubdomainwith the subfolder where you want FreshRSS to be hosted.NOTE: Ensure that the Docker container name for FreshRSS (freshrss in this example) matches the name used in the Caddyfile configuration. NOTE: Make sure to set the DNS Records for your configured subdomain.
-
Update FreshRSS Configuration:
Open the
config.phpfile in your FreshRSS installation and update thebase_urlparameter to match the subdomain configuration:'base_url' => 'https://subdomain.example.com/',Replace
example.comwith your actual domain andsubdomainwith the same subdomain specified in the Caddyfile. -
Restart Caddy and FreshRSS:
Restart Caddy to apply the configuration changes:
docker compose restart caddyRestart FreshRSS to ensure that it recognizes the new base URL:
docker compose restart freshrss -
Access FreshRSS:
FreshRSS should now be accessible at
https://subdomain.example.com/.