@@ -159,6 +159,29 @@ enough, as it will only trust the node sitting directly above your application
159159ranges of any additional proxy (e.g. `CloudFront IP ranges `_) to the array of
160160trusted proxies.
161161
162+ Reverse proxy in a subpath / subfolder
163+ --------------------------------------
164+
165+ If you a running a Symfony application behind a reverse proxy, where the application is served in a subpath / subfolder,
166+ you might encounter the problem that Symfony generates incorrect URLs, which ignore the subpath / subfolder of the reverse proxy.
167+ To fix this, you need to pass the subpath / subfolder route prefix of the reverse proxy to Symfony by
168+ setting the ``X-Forwarded-Prefix `` header. This is required for Symfony to generate the correct URLs. The header can normally be configured
169+ in your reverse proxy configuration. Configure ``X-Forwared-Prefix `` as trusted header to be able to use this feature.
170+
171+ The ``X-Forwarded-Prefix `` is used by Symfony to prefix the base URL of request objects, which is
172+ used to generate absolute paths and URLs in Symfony applications. Without the header, the base URL would be only determined
173+ based on the configuration of the web server running Symfony, which leads to incorrect pathes/URLs, when the application
174+ is served under a subpath by a reverse proxy.
175+
176+ For example if your symfony application is directly served under an URL like ``https://symfony.tld/ ``
177+ and you would like to use a reverse proxy to serve the application under ``https://public.tld/app/ ``, you would need
178+ to set the ``X-Forwarded-Prefix `` header to ``/app/ `` in your reverse proxy configuration.
179+ Without the header, Symfony would generate URLs based on its servers base URL (e.g. ``/my/route ``) instead of the correct
180+ ``/app/my/route ``, which is required to access the route via the reverse proxy.
181+
182+ The header can be different for each reverse proxy, so that access via different reverse proxies served under different
183+ subpaths can be handled correctly.
184+
162185Custom Headers When Using a Reverse Proxy
163186-----------------------------------------
164187
0 commit comments