@@ -159,6 +159,29 @@ enough, as it will only trust the node sitting directly above your application
159
159
ranges of any additional proxy (e.g. `CloudFront IP ranges `_) to the array of
160
160
trusted proxies.
161
161
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
+
162
185
Custom Headers When Using a Reverse Proxy
163
186
-----------------------------------------
164
187
0 commit comments