summaryrefslogtreecommitdiff
path: root/src/web/_views
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2026-02-26 10:24:43 -0500
committerFreya Murphy <freya@freyacat.org>2026-02-26 11:22:13 -0500
commite6fd79bad907c18e35fb2f99842b0ab62ed67114 (patch)
tree0e178e58cd758203aedd9bc9915373ecec711e90 /src/web/_views
parentupdate license (diff)
downloadwebsite-main.tar.gz
website-main.tar.bz2
website-main.zip
start caching html pages, lower request tree chainingHEADmain
Diffstat (limited to 'src/web/_views')
-rw-r--r--src/web/_views/bucket/main.php18
-rw-r--r--src/web/_views/head.php27
2 files changed, 34 insertions, 11 deletions
diff --git a/src/web/_views/bucket/main.php b/src/web/_views/bucket/main.php
index aeb6cf3..b85c773 100644
--- a/src/web/_views/bucket/main.php
+++ b/src/web/_views/bucket/main.php
@@ -1,13 +1,13 @@
<?php /* Copyright (c) 2024 Freya Murphy */ ?>
- <?php
- $root='https://webring.bucketfish.me/redirect.html?to=%s&name=' . $name;
- $this->view('head', $data);
- if ($lightmode === 'true') {
- echo $this->link_css('css/bucket_light.css');
- } else {
- echo $this->link_css('css/bucket.css');
- }
- ?>
+<?php
+ $root='https://webring.bucketfish.me/redirect.html?to=%s&name=' . $name;
+ $this->view('head', $data);
+ if ($lightmode === 'true') {
+ echo embed_css_ext('css/bucket_light.css');
+ } else {
+ echo embed_css_ext('css/bucket.css');
+ }
+?>
<base target="_parent" />
</head>
<body>
diff --git a/src/web/_views/head.php b/src/web/_views/head.php
index 1ca6954..8cd6f87 100644
--- a/src/web/_views/head.php
+++ b/src/web/_views/head.php
@@ -1,4 +1,19 @@
<?php /* Copyright (c) 2024 Freya Murphy */ ?>
+<?php
+ /* Html cache headers */
+ $current_app = ROUTER->req['app'];
+ $non_cached_apps = ['blog'];
+
+ if (ENVIRONMENT == 'production' && !in_array($current_app, $non_cached_apps)) {
+ $cache_seconds = 300;
+ if ($current_app == 'bucket') {
+ $cache_seconds = 3600;
+ }
+ header("Cache-Control: public, max-age=$cache_seconds");
+ header("Expires: " . gmdate('D, d M Y H:i:s', time() + $cache_seconds) . " UTC");
+ header("Pragma: cache");
+ }
+?>
<!DOCTYPE html>
<html lang="<?=lang('lang_short')?>">
<head>
@@ -21,10 +36,18 @@
<link rel="icon" type="image/png" sizes="512x512" href="<?=$this->get_url("public/icons/logo512.png", TRUE)?>">
<link rel="icon" type="image/png" sizes="640x640" href="<?=$this->get_url("public/icons/logo640.png", TRUE)?>">
<link rel="manifest" href="/manifest.json">
+ <?php if ($current_app != 'bucket'): ?>
+ <link rel="preload" href="<?=$this->get_url("public/font/FontStuck-Extended.woff2")?>" as="font" type="font/woff2" crossorigin>
+ <link rel="preload" href="<?=$this->get_url("public/font/CourierNew.woff2")?>" as="font" type="font/woff2" crossorigin>
+ <link rel="preconnect" href="https://john.citrons.xyz">
+ <?php else: ?>
+ <link rel="preload" href="<?=$this->get_url("public/font/Merriweather.woff2")?>" as="font" type="font/woff2" crossorigin>
+ <?php endif ?>
<?php
/* Main CSS */
- if (ROUTER->req['app'] != 'bucket')
- echo $this->link_css('css/main.css');
+ if (ROUTER->req['app'] != 'bucket') {
+ echo embed_css_ext('css/main.css');
+ }
/* IE 4-7 Styles */
echo ie($this->embed_css('css/ie/ie.css'));