RuntimeException (500)
Failed to read styles.yaml: Failed to save file /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/cache/gantry5/flurries_bus/compiled/yaml/15b902059b28586e22537285019b9517.yaml.php
Previous exceptions
  • Failed to save file /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/cache/gantry5/flurries_bus/compiled/yaml/15b902059b28586e22537285019b9517.yaml.php (0)
RuntimeException thrown with message "Failed to read styles.yaml: Failed to save file /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/cache/gantry5/flurries_bus/compiled/yaml/15b902059b28586e22537285019b9517.yaml.php" Stacktrace: #16 RuntimeException in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/File/CompiledFile.php:129 #15 RuntimeException in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/vendor/rockettheme/toolbox/File/src/AbstractFile.php:374 #14 RocketTheme\Toolbox\File\AbstractFile:save in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/vendor/rockettheme/toolbox/File/src/PhpFile.php:46 #13 RocketTheme\Toolbox\File\PhpFile:save in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/File/CompiledFile.php:113 #12 Gantry\Component\File\CompiledYamlFile:content in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/Config/CompiledConfig.php:108 #11 Gantry\Component\Config\CompiledConfig:loadFile in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/Config/CompiledBase.php:163 #10 Gantry\Component\Config\CompiledBase:loadFiles in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/Config/CompiledBase.php:99 #9 Gantry\Component\Config\CompiledBase:load in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/Config/CompiledConfig.php:74 #8 Gantry\Component\Config\CompiledConfig:load in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Framework/Services/ConfigServiceProvider.php:139 #7 Gantry\Framework\Services\ConfigServiceProvider:load in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Component/Theme/ThemeTrait.php:170 #6 Gantry\Framework\Theme:setLayout in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/plugins/gantry5/src/classes/Gantry/Framework/Theme.php:170 #5 Gantry\Framework\Theme:set_template_layout in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/class-wp-hook.php:324 #4 WP_Hook:apply_filters in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/class-wp-hook.php:348 #3 WP_Hook:do_action in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/plugin.php:517 #2 do_action in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/template-loader.php:13 #1 require_once in /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-blog-header.php:19 #0 require in /chroot/home/hazeltin/hazeltinelibrary.org/html/index.php:17
Stack frames (17)
16
RuntimeException
/src/classes/Gantry/Component/File/CompiledFile.php129
15
RuntimeException
/vendor/rockettheme/toolbox/File/src/AbstractFile.php374
14
RocketTheme\Toolbox\File\AbstractFile save
/vendor/rockettheme/toolbox/File/src/PhpFile.php46
13
RocketTheme\Toolbox\File\PhpFile save
/src/classes/Gantry/Component/File/CompiledFile.php113
12
Gantry\Component\File\CompiledYamlFile content
/src/classes/Gantry/Component/Config/CompiledConfig.php108
11
Gantry\Component\Config\CompiledConfig loadFile
/src/classes/Gantry/Component/Config/CompiledBase.php163
10
Gantry\Component\Config\CompiledBase loadFiles
/src/classes/Gantry/Component/Config/CompiledBase.php99
9
Gantry\Component\Config\CompiledBase load
/src/classes/Gantry/Component/Config/CompiledConfig.php74
8
Gantry\Component\Config\CompiledConfig load
/src/classes/Gantry/Framework/Services/ConfigServiceProvider.php139
7
Gantry\Framework\Services\ConfigServiceProvider load
/src/classes/Gantry/Component/Theme/ThemeTrait.php170
6
Gantry\Framework\Theme setLayout
/src/classes/Gantry/Framework/Theme.php170
5
Gantry\Framework\Theme set_template_layout
/chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/class-wp-hook.php324
4
WP_Hook apply_filters
/chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/class-wp-hook.php348
3
WP_Hook do_action
/chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/plugin.php517
2
do_action
/chroot/home/hazeltin/hazeltinelibrary.org/html/wp-includes/template-loader.php13
1
require_once
/chroot/home/hazeltin/hazeltinelibrary.org/html/wp-blog-header.php19
0
require
/chroot/home/hazeltin/hazeltinelibrary.org/html/index.php17
 
                    // If compiled file wasn't already locked by another process, save it.
                    if ($file->locked() !== false) {
                        $file->save($cache);
                        $file->unlock();
 
                        // Compile cached file into bytecode cache
                        if (function_exists('opcache_invalidate')) {
                            // Silence error in case if `opcache.restrict_api` directive is set.
                            @opcache_invalidate($file->filename(), true);
                        }
                    }
                }
                $file->free();
 
                $this->content = $cache['data'];
            }
 
        } catch (\Exception $e) {
            throw new \RuntimeException(sprintf('Failed to read %s: %s', Gantry::basename($this->filename), $e->getMessage()), 500, $e);
        }
 
        return parent::content($var);
    }
}
 
                if (@ftruncate($this->handle, 0) === false || @fwrite($this->handle, $this->raw()) === false) {
                    // Writing file failed, throw an error.
                    $tmp = false;
                }
            } else {
                // Create file with a temporary name and rename it to make the save action atomic.
                $tmp = $this->tempname($filename);
                if (file_put_contents($tmp, $this->raw()) === false) {
                    $tmp = false;
                } elseif (@rename($tmp, $filename) === false) {
                    @unlink($tmp);
                    $tmp = false;
                }
            }
        } catch (Exception $e) {
            $tmp = false;
        }
 
        if ($tmp === false) {
            throw new RuntimeException('Failed to save file ' . $filename);
        }
 
        // Touch the directory as well, thus marking it modified.
        @touch($dir);
    }
 
    /**
     * Rename file in the filesystem if it exists.
     *
     * @param string $filename
     * @return bool
     */
    public function rename($filename)
    {
        if (null !== $this->filename && $this->exists() && !@rename($this->filename, $filename)) {
            return false;
        }
 
        unset(static::$instances[$this->filename]);
        static::$instances[$filename] = $this;
Exception message: Failed to save file /chroot/home/hazeltin/hazeltinelibrary.org/html/wp-content/cache/gantry5/flurries_bus/compiled/yaml/15b902059b28586e22537285019b9517.yaml.php
     * @return array
     */
    public function content($var = null)
    {
        /** @var array $content */
        $content = parent::content($var);
 
        return $content;
    }
 
    /**
     * Saves PHP file and invalidates opcache.
     *
     * @param  mixed  $data  Optional data to be saved, usually array.
     * @return void
     * @throws RuntimeException
     */
    public function save($data = null)
    {
        parent::save($data);
 
        // Invalidate configuration file from the opcache.
        if (null !== $this->filename && function_exists('opcache_invalidate')) {
            @opcache_invalidate($this->filename, true);
        }
    }
 
    /**
     * Check contents and make sure it is in correct format.
     *
     * @param mixed $var
     * @return array
     * @throws RuntimeException
     */
    protected function check($var)
    {
        if (!(is_array($var) || is_object($var))) {
            throw new RuntimeException('Provided data is not an array');
        }
 
                ) {
                    // Attempt to lock the file for writing.
                    try {
                        $file->lock(false);
                    } catch (\Exception $e) {
                        // Another process has locked the file; we will check this in a bit.
                    }
 
                    // Decode RAW file into compiled array.
                    $data = $this->decode($this->raw());
                    $cache = [
                        '@class' => $class,
                        'filename' => $this->filename,
                        'modified' => $modified,
                        'data' => $data
                    ];
 
                    // If compiled file wasn't already locked by another process, save it.
                    if ($file->locked() !== false) {
                        $file->save($cache);
                        $file->unlock();
 
                        // Compile cached file into bytecode cache
                        if (function_exists('opcache_invalidate')) {
                            // Silence error in case if `opcache.restrict_api` directive is set.
                            @opcache_invalidate($file->filename(), true);
                        }
                    }
                }
                $file->free();
 
                $this->content = $cache['data'];
            }
 
        } catch (\Exception $e) {
            throw new \RuntimeException(sprintf('Failed to read %s: %s', Gantry::basename($this->filename), $e->getMessage()), 500, $e);
        }
 
        return parent::content($var);
    }
        $this->object = new Config($data, $this->callable);
    }
 
    /**
     * Finalize configuration object.
     */
    protected function finalizeObject()
    {
    }
 
    /**
     * Load single configuration file and append it to the correct position.
     *
     * @param  string  $name  Name of the position.
     * @param  string  $filename  File to be loaded.
     */
    protected function loadFile($name, $filename)
    {
        $file = CompiledYamlFile::instance($filename);
        $this->object->join($name, $file->content(), '/');
        $file->free();
    }
}
 
     *
     * @param  string  $name  Name of the position.
     * @param  string  $filename  File to be loaded.
     */
    abstract protected function loadFile($name, $filename);
 
    /**
     * Load and join all configuration files.
     *
     * @return bool
     * @internal
     */
    protected function loadFiles()
    {
        $this->createObject();
 
        $list = array_reverse($this->files);
        foreach ($list as $files) {
            foreach ($files as $name => $item) {
                $this->loadFile($name, $this->path . $item['file']);
            }
        }
 
        $this->finalizeObject();
 
        return true;
    }
 
    /**
     * Load compiled file.
     *
     * @param  string  $filename
     * @return bool
     * @internal
     */
    protected function loadCompiledFile($filename)
    {
        $gantry = Gantry::instance();
 
        /** @var Config $global */
    /**
     * Function gets called when cached configuration is saved.
     */
    public function modified()
    {
    }
 
    /**
     * Load the configuration.
     *
     * @return mixed
     */
    public function load()
    {
        if ($this->object) {
            return $this->object;
        }
 
        $filename = $this->createFilename();
        if (!$this->loadCompiledFile($filename) && $this->loadFiles()) {
            $this->saveCompiledFile($filename);
        }
 
        return $this->object;
    }
 
    /**
     * Returns checksum from the configuration files.
     *
     * You can set $this->checksum = false to disable this check.
     *
     * @return bool|string
     */
    public function checksum()
    {
        if (!isset($this->checksum)) {
            $this->checksum = md5(json_encode($this->files) . $this->version);
        }
 
        return $this->checksum;
     *
     * @param callable $blueprints
     * @return $this
     */
    public function setBlueprints(callable $blueprints)
    {
        $this->callable = $blueprints;
 
        return $this;
    }
 
    /**
     * @param bool $withDefaults
     * @return mixed
     */
    public function load($withDefaults = false)
    {
        $this->withDefaults = $withDefaults;
 
        return parent::load();
    }
 
    /**
     * Create configuration object.
     *
     * @param  array  $data
     */
    protected function createObject(array $data = [])
    {
        if ($this->withDefaults && empty($data) && is_callable($this->callable)) {
            $blueprints = $this->callable;
            $data = $blueprints()->getDefaults();
        }
 
        $this->object = new Config($data, $this->callable);
    }
 
    /**
     * Finalize configuration object.
     */
        $paths = [[]];
        foreach ($uris as $uri) {
            $paths[] = $locator->findResources($uri);
        }
        $paths = array_merge(...$paths);
 
        // Locate all configuration files to be compiled.
        $files = (new ConfigFileFinder)->locateFiles($paths);
 
        $cache = $locator->findResource('gantry-cache://theme/compiled/config', true, true);
        if (is_bool($cache)) {
            throw new \RuntimeException('Who just removed Gantry 5 cache folder? Try reloading the page if it fixes the issue');
        }
 
        $compiled = new CompiledConfig($cache, $files, GANTRY5_ROOT);
        $compiled->setBlueprints(static function() use ($container) {
            return $container['blueprints'];
        });
 
        $config = $compiled->load($withDefaults);
 
        // Set atom inheritance.
        $atoms = $config->get('page.head.atoms');
        if (is_array($atoms)) {
            $config->set('page.head.atoms', (new Atoms($atoms))->init()->toArray());
        }
 
        // Set FA default in Joomla
        if (class_exists(Version::class)) {
            $config->def('page.fontawesome.default_version', Version::MAJOR_VERSION < 4 ? 'fa4' : 'fa5css');
        } else {
            $config->def('page.fontawesome.default_version', 'fa4');
        }
 
        return $config;
    }
}
 
        if ($force) {
            unset($gantry['configuration']);
        }
 
        // Set default name only if configuration has not been set before.
        if ($name === null && !isset($gantry['configuration'])) {
            $name = 'default';
        }
 
        $outline = isset($gantry['configuration']) ? $gantry['configuration'] : null;
 
        // Set configuration if given.
        if ($name && $name !== $outline) {
            if (\GANTRY_DEBUGGER) {
                Debugger::addMessage("Using Gantry outline {$name}");
            }
 
            $gantry['configuration'] = $name;
            unset($gantry['config']);
            $gantry['config'] = ConfigServiceProvider::load($gantry, $name);
        }
 
        return $this;
    }
 
    /**
     * Get current preset.
     *
     * @param  bool $forced     If true, return only forced preset or null.
     * @return string|null $preset
     */
    public function preset($forced = false)
    {
        $presets = $this->presets()->toArray();
 
        $preset = $this->preset;
 
        if (!$preset && !$forced) {
            /** @var Config $config */
            $config = static::gantry()['config'];
 
        // Include Gantry specific things to the context.
        $context = array_replace($timberContext, $context);
 
        return $this->renderer()->render($file, $context);
    }
 
    public function set_template_layout()
    {
        $assignments = new Assignments();
        $selected = $assignments->select();
 
        if (\GANTRY_DEBUGGER) {
            Debugger::addMessage('Selecting outline (rules, matches, scores):', 'debug');
            Debugger::addMessage($assignments->getPage(), 'debug');
            Debugger::addMessage($assignments->matches(), 'debug');
            Debugger::addMessage($assignments->scores(), 'debug');
        }
 
        $this->setLayout($selected);
    }
 
    public function widgets_init()
    {
        $gantry = Gantry::instance();
 
        /** @var Outlines $outlines */
        $outlines = $gantry['outlines'];
 
        // Positions are set inside layouts and we need to grab all of them as we do not yet know which layout will be
        // displayed. We also need to register all the positions for the admin.
        $positions = $outlines->positions();
 
        if (!$positions) {
            // No positions are set; display notification in admin.
            \add_action('load-widgets.php',
                function() {
                    \add_action('admin_notices', function() {
                        echo '<div class="error"><p>' . \__('No widget blocks have been defined. Please add some in Gantry 5 Layout Manger or read <a target="_blank" rel="noopener" href="http://docs.gantry.org/gantry5/particles/position">documentation</a> on how to create widget blocks.', 'gantry5') . '</p></div>';
                    });
 
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        $num_args = count( $args );
 
        do {
            $this->current_priority[ $nesting_level ] = current( $this->iterations[ $nesting_level ] );
 
            $priority = $this->current_priority[ $nesting_level ];
 
            foreach ( $this->callbacks[ $priority ] as $the_ ) {
                if ( ! $this->doing_action ) {
                    $args[0] = $value;
                }
 
                // Avoid the array_slice() if possible.
                if ( 0 === $the_['accepted_args'] ) {
                    $value = call_user_func( $the_['function'] );
                } elseif ( $the_['accepted_args'] >= $num_args ) {
                    $value = call_user_func_array( $the_['function'], $args );
                } else {
                    $value = call_user_func_array( $the_['function'], array_slice( $args, 0, $the_['accepted_args'] ) );
                }
            }
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
        } while ( false !== next( $this->iterations[ $nesting_level ] ) );
 
        unset( $this->iterations[ $nesting_level ] );
        unset( $this->current_priority[ $nesting_level ] );
 
        --$this->nesting_level;
 
        return $value;
    }
 
    /**
     * Calls the callback functions that have been added to an action hook.
     *
     * @since 4.7.0
     *
     * @param array $args Parameters to pass to the callback functions.
     */
    public function do_action( $args ) {
        $this->doing_action = true;
        $this->apply_filters( '', $args );
 
        // If there are recursive calls to the current action, we haven't finished it until we get to the last one.
        if ( ! $this->nesting_level ) {
            $this->doing_action = false;
        }
    }
 
    /**
     * Processes the functions hooked into the 'all' hook.
     *
     * @since 4.7.0
     *
     * @param array $args Arguments to pass to the hook callbacks. Passed by reference.
     */
    public function do_all_hook( &$args ) {
        $nesting_level                      = $this->nesting_level++;
        $this->iterations[ $nesting_level ] = $this->priorities;
 
        do {
            $priority = current( $this->iterations[ $nesting_level ] );
    if ( ! isset( $wp_filter[ $hook_name ] ) ) {
        if ( isset( $wp_filter['all'] ) ) {
            array_pop( $wp_current_filter );
        }
 
        return;
    }
 
    if ( ! isset( $wp_filter['all'] ) ) {
        $wp_current_filter[] = $hook_name;
    }
 
    if ( empty( $arg ) ) {
        $arg[] = '';
    } elseif ( is_array( $arg[0] ) && 1 === count( $arg[0] ) && isset( $arg[0][0] ) && is_object( $arg[0][0] ) ) {
        // Backward compatibility for PHP4-style passing of `array( &$this )` as action `$arg`.
        $arg[0] = $arg[0][0];
    }
 
    $wp_filter[ $hook_name ]->do_action( $arg );
 
    array_pop( $wp_current_filter );
}
 
/**
 * Calls the callback functions that have been added to an action hook, specifying arguments in an array.
 *
 * @since 2.1.0
 *
 * @see do_action() This function is identical, but the arguments passed to the
 *                  functions hooked to `$hook_name` are supplied using an array.
 *
 * @global WP_Hook[] $wp_filter         Stores all of the filters and actions.
 * @global int[]     $wp_actions        Stores the number of times each action was triggered.
 * @global string[]  $wp_current_filter Stores the list of current filters with the current one last.
 *
 * @param string $hook_name The name of the action to be executed.
 * @param array  $args      The arguments supplied to the functions hooked to `$hook_name`.
 */
function do_action_ref_array( $hook_name, $args ) {
<?php
/**
 * Loads the correct template based on the visitor's url
 *
 * @package WordPress
 */
if ( wp_using_themes() ) {
    /**
     * Fires before determining which template to load.
     *
     * @since 1.5.0
     */
    do_action( 'template_redirect' );
}
 
/**
 * Filters whether to allow 'HEAD' requests to generate content.
 *
 * Provides a significant performance bump by exiting before the page
 * content loads for 'HEAD' requests. See #14348.
 *
 * @since 3.5.0
 *
 * @param bool $exit Whether to exit without generating any content for 'HEAD' requests. Default true.
 */
if ( 'HEAD' === $_SERVER['REQUEST_METHOD'] && apply_filters( 'exit_on_http_head', true ) ) {
    exit;
}
 
// Process feeds and trackbacks even if not using themes.
if ( is_robots() ) {
    /**
     * Fired when the template loader determines a robots.txt request.
     *
     * @since 2.1.0
     */
    do_action( 'do_robots' );
    return;
} elseif ( is_favicon() ) {
    /**
<?php
/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */
 
if ( ! isset( $wp_did_header ) ) {
 
    $wp_did_header = true;
 
    // Load the WordPress library.
    require_once __DIR__ . '/wp-load.php';
 
    // Set up the WordPress query.
    wp();
 
    // Load the theme template.
    require_once ABSPATH . WPINC . '/template-loader.php';
 
}
 
<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */
 
/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define( 'WP_USE_THEMES', true );
 
/** Loads the WordPress Environment and Template */
require __DIR__ . '/wp-blog-header.php';
 

Environment & details:

empty
empty
empty
empty
empty
Key Value
SERVER_SOFTWARE Apache/2.4.62 (AlmaLinux)
REQUEST_URI /sitemap.xml
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
USER hazeltin
HOME /home/hazeltin
SCRIPT_NAME /index.php
QUERY_STRING
REQUEST_METHOD GET
SERVER_PROTOCOL HTTP/2.0
GATEWAY_INTERFACE CGI/1.1
REDIRECT_URL /sitemap.xml
REMOTE_PORT 16166
SCRIPT_FILENAME /home/hazeltin/hazeltinelibrary.org/html/index.php
SERVER_ADMIN [email protected]
CONTEXT_DOCUMENT_ROOT /home/hazeltin/hazeltinelibrary.org/html
CONTEXT_PREFIX
REQUEST_SCHEME https
DOCUMENT_ROOT /home/hazeltin/hazeltinelibrary.org/html
REMOTE_ADDR 172.70.194.130
SERVER_PORT 443
SERVER_ADDR 50.28.76.41
SERVER_NAME hazeltinelibrary.org
SERVER_SIGNATURE
HTTP_HOST hazeltinelibrary.org
HTTP_X_FORWARDED_PROTO https
HTTP_CF_VISITOR {\"scheme\":\"https\"}
HTTP_CF_IPCOUNTRY US
HTTP_CF_CONNECTING_IP 216.73.216.11
HTTP_CDN_LOOP cloudflare; loops=1
HTTP_USER_AGENT Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
HTTP_ACCEPT_ENCODING gzip, br
HTTP_ACCEPT */*
HTTP_CF_RAY 96e825c869a84fa9-ORD
HTTP_X_FORWARDED_FOR 216.73.216.11
H2_STREAM_TAG 41-1
H2_STREAM_ID 1
H2_PUSHED_ON
H2_PUSHED
H2_PUSH off
H2PUSH off
HTTP2 on
SSL_CLIENT_CERT
SSL_SERVER_CERT -----BEGIN CERTIFICATE----- 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 -----END CERTIFICATE-----
SSL_TLS_SNI hazeltinelibrary.org
HTTPS on
HTTP_AUTHORIZATION
SCRIPT_URI https://hazeltinelibrary.org/sitemap.xml
SCRIPT_URL /sitemap.xml
UNIQUE_ID aJyCQ6mFqec1VOPNEW5A3AAAKQI
REDIRECT_STATUS 200
REDIRECT_H2_STREAM_TAG 41-1
REDIRECT_H2_STREAM_ID 1
REDIRECT_H2_PUSHED_ON
REDIRECT_H2_PUSHED
REDIRECT_H2_PUSH off
REDIRECT_H2PUSH off
REDIRECT_HTTP2 on
REDIRECT_SSL_CLIENT_CERT
REDIRECT_SSL_SERVER_CERT -----BEGIN CERTIFICATE----- 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 -----END CERTIFICATE-----
REDIRECT_SSL_TLS_SNI hazeltinelibrary.org
REDIRECT_HTTPS on
REDIRECT_HTTP_AUTHORIZATION
REDIRECT_SCRIPT_URI https://hazeltinelibrary.org/sitemap.xml
REDIRECT_SCRIPT_URL /sitemap.xml
REDIRECT_UNIQUE_ID aJyCQ6mFqec1VOPNEW5A3AAAKQI
FCGI_ROLE RESPONDER
PHP_SELF /index.php
REQUEST_TIME_FLOAT 1755087427.9964
REQUEST_TIME 1755087427
empty
0. Whoops\Handler\PrettyPageHandler