@@ -14,11 +14,11 @@ Include conf.d/variables/global.vars
14
14
# WARNING!!! The probe paths below are INTERNAL and RESERVED - please DO NOT USE them in your virtual host configurations!
15
15
16
16
# Liveness probe URL
17
- Alias "/system/probes/live" /etc/httpd/ probes/live-status.json
17
+ Alias "/system/probes/live" probes/live-status.json
18
18
# Readiness probe URL
19
- Alias "/system/probes/ready" /etc/httpd/ probes/ready-status.json
19
+ Alias "/system/probes/ready" probes/ready-status.json
20
20
# Startup probe URL
21
- Alias "/system/probes/start" /etc/httpd/ probes/startup-status.json
21
+ Alias "/system/probes/start" probes/startup-status.json
22
22
23
23
# internal probes endpoint
24
24
<LocationMatch "/system/probes">
@@ -54,31 +54,18 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
54
54
</LocationMatch>
55
55
</IfDefine>
56
56
57
- # SITES-5185 - Ensure all GraphQL Queries to production publisher are using Persistent Queries and not direct query requests
58
- <IfDefine ENVIRONMENT_PROD>
59
- SSLProxyEngine on
60
- <LocationMatch "^/content/_cq_graphql/.*/endpoint.json$">
61
- RewriteCond %{ENV:ENABLE_GRAPHQL_ENDPOINT} ^$ [OR]
62
- RewriteCond %{ENV:ENABLE_GRAPHQL_ENDPOINT} ^false$
63
- RewriteRule ^/(.*)$ - [R=404,L]
64
- </LocationMatch>
65
- </IfDefine>
66
- <IfDefine ENVIRONMENT_STAGE>
67
- SSLProxyEngine on
68
- <LocationMatch "^/content/_cq_graphql/.*/endpoint.json$">
69
- RewriteCond %{ENV:ENABLE_GRAPHQL_ENDPOINT} ^$ [OR]
70
- RewriteCond %{ENV:ENABLE_GRAPHQL_ENDPOINT} ^false$
71
- RewriteRule ^/(.*)$ - [R=404,L]
72
- </LocationMatch>
73
- </IfDefine>
74
-
75
57
# If the module loads correctly then apply base settings for the module
76
58
<IfModule disp_apache2.c>
77
59
# location of the configuration file. eg: 'conf/dispatcher.any'
78
60
DispatcherConfig conf.dispatcher.d/dispatcher.any
79
61
80
62
# Format for the dispatcher log file
81
- LogFormat "%t \"%m %{dispatcher:uri}e%q %H\" %{dispatcher:status}e %{dispatcher:cache}e [%{dispatcher:backend}e] %{ms}Tms \"%{Host}i\"" dispatcher
63
+ <IfDefine !LOG_X_REQUEST_ID>
64
+ LogFormat "%t \"%m %{dispatcher:uri}e%q %H\" %{dispatcher:status}e %{dispatcher:cache}e [%{dispatcher:backend}e] %{ms}Tms \"%{Host}i\"" dispatcher
65
+ </IfDefine>
66
+ <IfDefine LOG_X_REQUEST_ID>
67
+ LogFormat "%t \"%m %{dispatcher:uri}e%q %H\" %{dispatcher:status}e %{dispatcher:cache}e [%{dispatcher:backend}e] %{ms}Tms \"%{Host}i\" \"%{x-request-id}i\"" dispatcher
68
+ </IfDefine>
82
69
CustomLog "| /usr/sbin/rotatelogs -e -f -t logs/dispatcher.log 86400" dispatcher "expr=%{HANDLER} == 'dispatcher-handler'"
83
70
84
71
# Log level for the dispatcher module
@@ -116,20 +103,23 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
116
103
Header unset Age
117
104
</IfDefine>
118
105
119
- # SITES-3659 Prevent re-encodes of URLs sent to GraphQL Persisted Queries API endpoint
120
- <LocationMatch "/graphql/execute.json/.*">
121
- ProxyPassMatch http://${AEM_HOST}:${AEM_PORT} nocanon
122
- </LocationMatch>
106
+ # SITES-11040 Do ProxyPassMatch, if caching for GraphQL Persisted Queries is not enabled
107
+ <IfDefine !CACHE_GRAPHQL_PERSISTED_QUERIES>
108
+ # SITES-3659 Prevent re-encodes of URLs sent to GraphQL Persisted Queries API endpoint
109
+ <LocationMatch "/graphql/execute.json/.*">
110
+ ProxyPassMatch http://${AEM_HOST}:${AEM_PORT} nocanon
111
+ </LocationMatch>
112
+ </IfDefine>
123
113
124
- # (legacy) Allow ingressroute checks through on /systemready (regardless of dispatcher filters)
114
+ # Legacy /systemready mapped to new Health probe URL /system/probes/health in AEM
125
115
<Location "/systemready">
126
- ProxyPass http://${AEM_HOST}:${AEM_PORT}/systemready
116
+ ProxyPass http://${AEM_HOST}:${AEM_PORT}/system/probes/health
127
117
RewriteEngine Off
128
118
</Location>
129
119
130
- # new Health probe URL to legacy /systemready URL mapping
120
+ # Allow ingressroute checks through on /system/probes/health (regardless of dispatcher filters)
131
121
<Location "/system/probes/health">
132
- ProxyPass http://${AEM_HOST}:${AEM_PORT}/systemready
122
+ ProxyPass http://${AEM_HOST}:${AEM_PORT}/system/probes/health
133
123
RewriteEngine Off
134
124
</Location>
135
125
@@ -154,6 +144,9 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
154
144
ProxyPassMatch ${COMMERCE_ENDPOINT}$2
155
145
ProxyPassReverse ${COMMERCE_ENDPOINT}
156
146
RewriteEngine Off
147
+ # CIF-2971: Experience Platform Connector cookie to header forwarding
148
+ SetEnvIfNoCase Cookie "(^| )aep-segments-membership=([^;]*)" AEP_SEGMENTS_MEMBERSHIP=$2
149
+ RequestHeader set aep-segments-membership "%{AEP_SEGMENTS_MEMBERSHIP}e" env=AEP_SEGMENTS_MEMBERSHIP
157
150
</LocationMatch>
158
151
</IfDefine>
159
152
<IfDefine COMMERCE_ENDPOINT_2>
@@ -165,6 +158,8 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
165
158
ProxyPassMatch ${AEM_COMMERCE_ENDPOINT_2}$2
166
159
ProxyPassReverse ${AEM_COMMERCE_ENDPOINT_2}
167
160
RewriteEngine Off
161
+ SetEnvIfNoCase Cookie "(^| )aep-segments-membership=([^;]*)" AEP_SEGMENTS_MEMBERSHIP=$2
162
+ RequestHeader set aep-segments-membership "%{AEP_SEGMENTS_MEMBERSHIP}e" env=AEP_SEGMENTS_MEMBERSHIP
168
163
</LocationMatch>
169
164
</IfDefine>
170
165
<IfDefine COMMERCE_ENDPOINT_3>
@@ -176,6 +171,8 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
176
171
ProxyPassMatch ${AEM_COMMERCE_ENDPOINT_3}$2
177
172
ProxyPassReverse ${AEM_COMMERCE_ENDPOINT_3}
178
173
RewriteEngine Off
174
+ SetEnvIfNoCase Cookie "(^| )aep-segments-membership=([^;]*)" AEP_SEGMENTS_MEMBERSHIP=$2
175
+ RequestHeader set aep-segments-membership "%{AEP_SEGMENTS_MEMBERSHIP}e" env=AEP_SEGMENTS_MEMBERSHIP
179
176
</LocationMatch>
180
177
</IfDefine>
181
178
<IfDefine COMMERCE_ENDPOINT_4>
@@ -187,6 +184,8 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
187
184
ProxyPassMatch ${AEM_COMMERCE_ENDPOINT_4}$2
188
185
ProxyPassReverse ${AEM_COMMERCE_ENDPOINT_4}
189
186
RewriteEngine Off
187
+ SetEnvIfNoCase Cookie "(^| )aep-segments-membership=([^;]*)" AEP_SEGMENTS_MEMBERSHIP=$2
188
+ RequestHeader set aep-segments-membership "%{AEP_SEGMENTS_MEMBERSHIP}e" env=AEP_SEGMENTS_MEMBERSHIP
190
189
</LocationMatch>
191
190
</IfDefine>
192
191
<IfDefine COMMERCE_ENDPOINT_5>
@@ -198,6 +197,8 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
198
197
ProxyPassMatch ${AEM_COMMERCE_ENDPOINT_5}$2
199
198
ProxyPassReverse ${AEM_COMMERCE_ENDPOINT_5}
200
199
RewriteEngine Off
200
+ SetEnvIfNoCase Cookie "(^| )aep-segments-membership=([^;]*)" AEP_SEGMENTS_MEMBERSHIP=$2
201
+ RequestHeader set aep-segments-membership "%{AEP_SEGMENTS_MEMBERSHIP}e" env=AEP_SEGMENTS_MEMBERSHIP
201
202
</LocationMatch>
202
203
</IfDefine>
203
204
@@ -215,7 +216,7 @@ Alias "/system/probes/start" /etc/httpd/probes/startup-status.json
215
216
</Directory>
216
217
217
218
# internal metadata endpoint
218
- Alias "/gitinit-status" /etc/httpd/ metadata/gitinit-status.json
219
+ Alias "/gitinit-status" metadata/gitinit-status.json
219
220
220
221
<LocationMatch "/gitinit-status">
221
222
RewriteEngine Off
@@ -227,6 +228,50 @@ Alias "/gitinit-status" /etc/httpd/metadata/gitinit-status.json
227
228
Require expr "%{HTTP_HOST} == '${POD_NAME}'"
228
229
</Directory>
229
230
231
+ # Dedicated vhost for EaaS:
232
+ # (currently disabled, but customers can expect it to be enabled in future versions - CQ-4349728)
233
+ #<VirtualHost *:80>
234
+ # ServerName "test.eaas"
235
+ # # possibility to make overrides before directives in this vhost
236
+ # IncludeOptional conf.d/includes/first-listed-vhost.pre.includes
237
+ # # since this vhost is first-listed one, this setting influences other vhosts - see https://httpd.apache.org/docs/2.4/mod/core.html#limitrequestfieldsize
238
+ # LimitRequestFieldSize 32768
239
+ # DocumentRoot /var/www/localhost/htdocs
240
+ # AllowEncodedSlashes NoDecode
241
+ # <IfModule mod_headers.c>
242
+ # Header add X-Vhost "test.eaas"
243
+ # </IfModule>
244
+ # <Directory "/var/www/localhost/htdocs">
245
+ # Options Indexes FollowSymLinks
246
+ # AllowOverride None
247
+ # Require all granted
248
+ # </Directory>
249
+ #
250
+ # # SKYOPS-49434: Allow EaaS to access publish instance directly for dev and stage environments when test.eaas vhost is requested
251
+ # <IfDefine ENVIRONMENT_DEV>
252
+ # <LocationMatch "/">
253
+ # ProxyPassMatch http://${AEM_HOST}:${AEM_PORT}
254
+ # RewriteEngine Off
255
+ # </LocationMatch>
256
+ # </IfDefine>
257
+ # <IfDefine ENVIRONMENT_STAGE>
258
+ # <LocationMatch "/">
259
+ # ProxyPassMatch http://${AEM_HOST}:${AEM_PORT}
260
+ # RewriteEngine Off
261
+ # </LocationMatch>
262
+ # </IfDefine>
263
+ # # 403 Forbidden on prod
264
+ # <IfDefine ENVIRONMENT_PROD>
265
+ # <IfModule mod_rewrite.c>
266
+ # RewriteEngine on
267
+ # RewriteRule ^ - [F]
268
+ # </IfModule>
269
+ # </IfDefine>
270
+ # # possibility to make overrides after directives in this vhost
271
+ # IncludeOptional conf.d/includes/first-listed-vhost.post.includes
272
+ #</VirtualHost>
273
+
274
+ # Customer's vhosts:
230
275
Include conf.d/enabled_vhosts/*.vhost
231
276
232
277
# Create a catch-all vhost
0 commit comments