chore: copy ep_products and ep_theme from EP/website@9593cc8

Copied unchanged from public/typo3conf/ext/ of EP/website at
9593cc8631354f8a363d6609de8b7433f669a9a0 (Git-tracked files only).
History stays in the old repository. Only composer.json files are
added so the extensions install as path packages.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
frommeandClaude Opus 5.5 committed 2026-10-21 14:01:20 +02:00
1 parent 59afaecea1
commit a46918de9d
778 files changed
+67000 -2

No files matched your search

@@ -0,0 +1,26 @@
config.tx_replacer {
enable_regex = 1
# Only images go to the CDN. The theme's own css/js/fonts are served by the production
# host: they are already minified by Webpack, gzipped by mod_deflate and content-hashed
# for a year of immutable browser caching, and keeping them on the page's own origin
# means they arrive over the connection the browser has already opened rather than
# costing a second DNS lookup and TLS handshake on the critical path.
#
# It also keeps them clear of the pull zone's habit of occasionally wedging a single
# cache key (10.0s -> 504 errorcode 106 until that key is purged, while the origin
# serves the same bytes in under 100ms). For an image that degrades one element; for
# js/main.<hash>.js it would take every visitor's JavaScript down.
#
# typo3temp is scoped to generated images on purpose - assets/compressed holds other
# extensions' concatenated css/js, which belongs on the origin for the same reason.
# The quote character is captured rather than matched literally, so url() values
# written with single quotes are rewritten too.
search {
10 = /(["'])\/?(fileadmin|uploads|typo3temp\/assets\/(?:_processed_|images))/
}
replace {
10 = $1https://cdn.ep-reisen.de/$2
}
}