[PHP-WEBMASTER] [web-php] master: Fix 'supported-versions.php' page, and caching in some other pages too

[email protected] (Derick Rethans)
Newsgroups php.webmaster
Message-ID <[email protected]>
Author: Derick Rethans (derickr)
Date: 2026-08-14T13:10:50+01:00

Commit: https://github.com/php/web-php/commit/26b50b74acf74e10646804f2e31866c199eb9bfd
Raw diff: https://github.com/php/web-php/commit/26b50b74acf74e10646804f2e31866c199eb9bfd.diff

Fix 'supported-versions.php' page, and caching in some other pages too

Changed paths:
  A  public/include/pregen-confs.inc
  A  public/include/pregen-news.inc
  D  include/pregen-confs.inc
  D  include/pregen-news.inc
  M  phpstan.neon.dist
  M  public/images/supported-versions.php
  M  public/releases/active.php
  M  public/releases/index.php
  M  public/supported-versions.php


Diff:

diff --git a/phpstan.neon.dist b/phpstan.neon.dist
index ee0bff472b..7dd8e0ad29 100644
--- a/phpstan.neon.dist
+++ b/phpstan.neon.dist
@@ -17,5 +17,5 @@ parameters:
 			- var/ (?)
 			- public/manual/en
 			- include/releases.inc
-			- include/pregen-news.inc
-			- include/pregen-confs.inc
+			- public/include/pregen-news.inc
+			- public/include/pregen-confs.inc
diff --git a/public/images/supported-versions.php b/public/images/supported-versions.php
index 80434bbb8c..5e16e15d73 100644
--- a/public/images/supported-versions.php
+++ b/public/images/supported-versions.php
@@ -1,6 +1,8 @@
 <?php
-require_once __DIR__ . '/../include/prepend.inc';
-require_once __DIR__ . '/../include/branches.inc';
+use phpweb\ProjectGlobals;
+
+require_once __DIR__ . '/../../include/prepend.inc';
+require_once ProjectGlobals::getProjectRoot(). '/include/branches.inc';
 
 // Sizing constants.
 $margin_left = 80;
@@ -55,6 +57,7 @@ function date_horiz_coord(DateTime $date) {
 
 if (!isset($non_standalone)) {
     header('Content-Type: image/svg+xml');
+    header('Cache-Control: public, max-age=10800'); // 3 hours
     echo '<?xml version="1.0"?>';
 }
 
diff --git a/include/pregen-confs.inc b/public/include/pregen-confs.inc
similarity index 100%
rename from include/pregen-confs.inc
rename to public/include/pregen-confs.inc
diff --git a/include/pregen-news.inc b/public/include/pregen-news.inc
similarity index 100%
rename from include/pregen-news.inc
rename to public/include/pregen-news.inc
diff --git a/public/releases/active.php b/public/releases/active.php
index 5aa8360c1a..d9ac8fb0d0 100644
--- a/public/releases/active.php
+++ b/public/releases/active.php
@@ -8,5 +8,6 @@
 require_once ProjectGlobals::getProjectRoot(). '/include/branches.inc';
 
 header('Content-Type: application/json; charset=UTF-8');
+header('Cache-Control: public, max-age=900');
 
 echo json_encode(get_active_branches());
diff --git a/public/releases/index.php b/public/releases/index.php
index 7a259cb250..e87e49df4c 100644
--- a/public/releases/index.php
+++ b/public/releases/index.php
@@ -1,8 +1,10 @@
 <?php
 
+use phpweb\ProjectGlobals;
+
 $_SERVER['BASE_PAGE'] = 'releases/index.php';
 require_once __DIR__ . '/../../include/prepend.inc';
-require_once __DIR__ . "/../../include/branches.inc";
+require_once ProjectGlobals::getProjectRoot(). '/include/branches.inc';
 
 if (isset($_GET["serialize"]) || isset($_GET["json"])) {
     $RELEASES = $RELEASES + $OLDRELEASES;
diff --git a/public/supported-versions.php b/public/supported-versions.php
index c7d98b6097..8912bc7623 100644
--- a/public/supported-versions.php
+++ b/public/supported-versions.php
@@ -1,10 +1,19 @@
 <?php
+
+use phpweb\ProjectGlobals;
+
 $_SERVER['BASE_PAGE'] = 'supported-versions.php';
 
 require_once __DIR__ . '/../include/prepend.inc';
-require_once __DIR__ . '/../include/branches.inc';
+require_once ProjectGlobals::getProjectRoot(). '/include/branches.inc';
 
-site_header('Supported Versions', ['css' => ['supported-versions.css']]);
+site_header(
+	'Supported Versions',
+	[
+		'css' => ['supported-versions.css'],
+		'cache_control' => 3 * 60 * 60, // 3 hours
+	]
+);
 
 // Version notes: if you need to make a note about a version having an unusual
 // support lifetime, add it under a heading with an anchor, and add the anchor
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.