- Site set Vitecset: new bool setting vitec.ssr.enabled (default off, backend switch under Site Management > Settings > VITEC Settings) - SsrFlagService derives var/vitec-ssr-on.flag from the setting; SyncSsrFlag middleware (frontend + backend) re-syncs per request because TYPO3 v14 fires no event on site settings save; vitec:ssr-flag CLI command for status/--sync - public/.htaccess: flag-gated block proxies page requests [P] to https://vitec-ssr.evomedien.de (mod_proxy incl. https target verified on this host 2026-11-09), same exclusions as the SPA fallback block; completely inert while the flag file is absent - Emergency off without TYPO3: delete var/vitec-ssr-on.flag - Tested end to end: flag on -> pages proxied to VPS Caddy (502 while the SSR node is not deployed yet), /_json untouched; flag off -> SPA shell exactly as before Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
69 lines
2.2 KiB
PHP
Executable File
69 lines
2.2 KiB
PHP
Executable File
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* Frontend middleware registration for EXT:vitec.
|
|
*/
|
|
return [
|
|
'frontend' => [
|
|
'vitec/json-prefix-rewrite' => [
|
|
'target' => \Evomedien\Vitec\Middleware\JsonPrefixRewrite::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
'before' => [
|
|
'typo3/cms-frontend/site',
|
|
'vitec/form-submission',
|
|
'vitec/success-story-path-rewrite',
|
|
'vitec/download-file',
|
|
],
|
|
],
|
|
'vitec/form-submission' => [
|
|
'target' => \Evomedien\Vitec\Middleware\FormSubmissionMiddleware::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
'before' => [
|
|
'typo3/cms-frontend/site',
|
|
],
|
|
],
|
|
'vitec/success-story-path-rewrite' => [
|
|
'target' => \Evomedien\Vitec\Middleware\SuccessStoryPathRewrite::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
'before' => [
|
|
'typo3/cms-frontend/site',
|
|
],
|
|
],
|
|
'vitec/download-file' => [
|
|
'target' => \Evomedien\Vitec\Middleware\DownloadFileMiddleware::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
'before' => [
|
|
'typo3/cms-frontend/site',
|
|
],
|
|
],
|
|
// Self-healing sync of the SSR routing flag file against the
|
|
// Site Set switch vitec.ssr.enabled (no core event fires on
|
|
// settings save, hence per-request sync; cheap file_exists when
|
|
// nothing changed). Also registered for the backend below.
|
|
'vitec/sync-ssr-flag' => [
|
|
'target' => \Evomedien\Vitec\Middleware\SyncSsrFlag::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
],
|
|
],
|
|
'backend' => [
|
|
'vitec/sync-ssr-flag' => [
|
|
'target' => \Evomedien\Vitec\Middleware\SyncSsrFlag::class,
|
|
'after' => [
|
|
'typo3/cms-core/normalized-params-attribute',
|
|
],
|
|
],
|
|
],
|
|
];
|