feat: EXT:staticfilecache serves cached pages without PHP again, as on TYPO3 10

Every page view goes through TYPO3 13 since the switch; staticfilecache
15.2 writes a gzip copy of each cacheable page, and the TYPO3 10 rewrite
rules in public/.htaccess let Apache deliver it directly (GET, no query
string, no backend login). Pages answer in about 2 ms instead of
0.5-4 s; static and dynamic output are identical for a sample of 22
sitemap URLs.

A flush of the pages cache group (travel data and snow report imports,
"clear frontend caches", deploys) removes the files; a page's own cache
lifetime still applies through the generated per-page .htaccess.

X-SFC-Tags is not passed on: with every record of a page as a tag it
reaches 100+ KB, more than Apache accepts from PHP-FPM, and it would
expose internal record ids. Debug headers stay off for the same reason.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
frommeandClaude Opus 5.5 committed 2026-10-24 19:05:21 +02:00
1 parent df3d823de4
commit 283f54c56c
4 files changed
+233 -1

No files matched your search

Generated
+89 -1
View File
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "85a0f79761fbcaf517b130c2f7a3e114",
"content-hash": "f1134476988f3bf5d2a3a74092cdb285",
"packages": [
{
"name": "b13/container",
@@ -1785,6 +1785,94 @@
],
"time": "2022-02-21T08:41:21+00:00"
},
{
"name": "lochmueller/staticfilecache",
"version": "15.2.3",
"source": {
"type": "git",
"url": "https://github.com/lochmueller/staticfilecache.git",
"reference": "21697e6b3ea3584995fefe9ab74615927a872744"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/lochmueller/staticfilecache/zipball/21697e6b3ea3584995fefe9ab74615927a872744",
"reference": "21697e6b3ea3584995fefe9ab74615927a872744",
"shasum": ""
},
"require": {
"ext-pdo": "*",
"ext-zlib": "*",
"php": "^8.1",
"typo3/cms-backend": "^12.4||^13.4",
"typo3/cms-core": "^12.4||^13.4",
"typo3/cms-extensionmanager": "^12.4||^13.4"
},
"require-dev": {
"andersundsehr/phpstan-git-files": "^1.0",
"friendsofphp/php-cs-fixer": "^3.30",
"phpstan/extension-installer": "^1.3",
"phpstan/phpstan": "^1.10",
"saschaegerer/phpstan-typo3": "^1.8",
"ssch/typo3-rector": "^2.2",
"typo3/testing-framework": "^8.0"
},
"suggest": {
"friendsofsymfony/http-cache": "For HTTP proxy cache services like Varnish",
"lochmueller/seocli": "Scan websites against SEO criteria and/or trigger the indexing process and cache warming in deployment scripts"
},
"type": "typo3-cms-extension",
"extra": {
"typo3/cms": {
"web-dir": ".Build/Web",
"extension-key": "staticfilecache",
"cms-package-dir": "{$vendor-dir}/typo3/cms"
}
},
"autoload": {
"psr-4": {
"SFC\\Staticfilecache\\": "Classes"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"GPL-2.0-or-later"
],
"authors": [
{
"name": "Tim Lochmüller",
"email": "[email protected]",
"homepage": "https://github.com/lochmueller",
"role": "Developer"
}
],
"description": "Transparent static file cache solution using mod_rewrite and mod_expires. Increase performance for static pages by a factor of 230!!",
"homepage": "https://extensions.typo3.org/extension/staticfilecache",
"keywords": [
"StaticFileCache",
"TYPO3 CMS",
"cache",
"file",
"magic",
"speed",
"static"
],
"support": {
"docs": "https://docs.typo3.org/p/lochmueller/staticfilecache/main/en-us/",
"issues": "https://github.com/lochmueller/staticfilecache/issues",
"source": "https://github.com/lochmueller/staticfilecache"
},
"funding": [
{
"url": "https://paypal.me/lochmueller",
"type": "custom"
},
{
"url": "https://github.com/lochmueller",
"type": "github"
}
],
"time": "2025-09-02T19:26:27+00:00"
},
{
"name": "lolli42/finediff",
"version": "1.1.2",