Support & Oft gestellte Fragen

Seitenoptimierung


Die Optimierung einer Webseite ist ein wichtiger Bestandteil moderner Webentwicklung. Schnell ladende Seiten verbessern nicht nur die Benutzerfreundlichkeit, sondern wirken sich auch positiv auf Suchmaschinenrankings und die Serverauslastung aus. Zu den wichtigsten Maßnahmen gehören die Komprimierung von Inhalten, die Optimierung von Bildern, Browser-Caching sowie die Minimierung von CSS- und JavaScript-Dateien.


Warum ist Seitenoptimierung wichtig?

Eine nicht optimierte Webseite verursacht:

  • längere Ladezeiten

  • höhere Absprungraten

  • mehr Datenverkehr

  • schlechtere Positionen in Suchmaschinen

  • höhere Serverlast

Bereits wenige Sekunden zusätzliche Ladezeit können die Nutzererfahrung erheblich beeinträchtigen. Moderne Browser und Suchmaschinen bevorzugen schnelle und effizient ausgelieferte Webseiten.


Aktivierung von GZIP-Komprimierung

Durch GZIP können HTML-, CSS- und JavaScript-Dateien vor der Übertragung komprimiert werden. Die Datenmenge reduziert sich häufig um 60–80 %.

PHP-Beispiel

<?php
ob_start('ob_gzhandler');

echo "<h1>Willkommen auf meiner Webseite</h1>";

ob_end_flush();
?>

Automatische Aktivierung per .htaccess

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/json
    AddOutputFilterByType DEFLATE application/xml
</IfModule>

Browser-Caching aktivieren

Statische Dateien wie Bilder, CSS und JavaScript sollten vom Browser zwischengespeichert werden.

.htaccess

<IfModule mod_expires.c>
    ExpiresActive On

    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
</IfModule>

Dies reduziert die Anzahl der Serveranfragen erheblich.


HTML-Ausgabe komprimieren

PHP erzeugt häufig unnötige Leerzeichen und Zeilenumbrüche.

Ausgabe minimieren

<?php

function compressHtml($buffer)
{
    $search = [
        '/\>[^\S ]+/s',
        '/[^\S ]+\</s',
        '/(\s)+/s'
    ];

    $replace = [
        '>',
        '<',
        '\\1'
    ];

    return preg_replace($search, $replace, $buffer);
}

ob_start('compressHtml');

?>
<!DOCTYPE html>
<html>
<body>

<h1>Meine Webseite</h1>

</body>
</html>
<?php
ob_end_flush();
?>

CSS und JavaScript minimieren

CSS minimieren

<?php

$css = file_get_contents('style.css');

$css = preg_replace('/\/\*.*?\*\//s', '', $css);
$css = preg_replace('/\s+/', ' ', $css);
$css = str_replace(
    [' {', '{ ', '; ', ': ', ', '],
    ['{', '{', ';', ':', ','],
    $css
);

file_put_contents('style.min.css', trim($css));

echo "CSS minimiert.";
?>

JavaScript minimieren

<?php

$js = file_get_contents('script.js');

$js = preg_replace('/\/\/.*$/m', '', $js);
$js = preg_replace('/\s+/', ' ', $js);

file_put_contents('script.min.js', trim($js));

echo "JavaScript minimiert.";
?>

Hinweis: Für produktive Umgebungen empfiehlt sich zusätzlich der Einsatz professioneller Minifier wie Terser oder UglifyJS.


Datenbankabfragen cachen

Oft entstehen lange Ladezeiten durch wiederholte Datenbankzugriffe.

Einfaches Dateicaching

<?php

$cacheFile = __DIR__ . '/cache/news.cache';
$cacheTime = 300;

if (
    file_exists($cacheFile) &&
    (time() - filemtime($cacheFile)) < $cacheTime
) {
    echo file_get_contents($cacheFile);
    exit;
}

ob_start();

/*
 * Hier erfolgt die Datenbankabfrage
 */

echo "<h2>Aktuelle Nachrichten</h2>";

$content = ob_get_contents();

file_put_contents($cacheFile, $content);

ob_end_flush();
?>

Bilder lazy laden

Bilder sollten erst geladen werden, wenn sie tatsächlich benötigt werden.

<img
    src="bilder/foto.jpg"
    loading="lazy"
    alt="Beispielbild">

Dies reduziert die initiale Ladezeit erheblich.


WebP automatisch ausliefern

WebP-Dateien sind häufig 20–40 % kleiner als JPEG oder PNG.

PHP-Beispiel

<?php

$image = 'bilder/banner';

if (
    strpos($_SERVER['HTTP_ACCEPT'] ?? '', 'image/webp') !== false &&
    file_exists($image . '.webp')
) {
    header('Content-Type: image/webp');
    readfile($image . '.webp');
} else {
    header('Content-Type: image/jpeg');
    readfile($image . '.jpg');
}
?>

Serverseitige Performance-Messung

<?php

$start = microtime(true);

/*
 * Anwendungscode
 */

usleep(50000);

$time = round(
    (microtime(true) - $start) * 1000,
    2
);

echo "Generierungszeit: {$time} ms";
?>

Komplettes Beispiel einer optimierten Seite

<?php

ob_start('ob_gzhandler');

$start = microtime(true);

header('Cache-Control: public, max-age=3600');

?>
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Optimierte Webseite</title>

<link rel="stylesheet" href="style.min.css">
<script src="script.min.js" defer></script>
</head>
<body>

<h1>Meine optimierte Webseite</h1>

<img
    src="bilder/header.webp"
    loading="lazy"
    alt="Header">

</body>
</html>
<?php

$time = round(
    (microtime(true) - $start) * 1000,
    2
);

echo "\n<!-- Generierungszeit: {$time} ms -->";

ob_end_flush();
?>

Empfehlungen für loswebos-Webhosting

Für optimale Ladezeiten empfiehlt sich folgende Vorgehensweise:

  1. GZIP-Komprimierung aktivieren.

  2. Browser-Caching per .htaccess konfigurieren.

  3. HTML-, CSS- und JavaScript-Dateien minimieren.

  4. Bilder als WebP oder AVIF bereitstellen.

  5. Lazy Loading für Bilder verwenden.

  6. Datenbankabfragen zwischenspeichern.

  7. Die Generierungszeit regelmäßig messen und Engpässe identifizieren.

Durch die Kombination dieser Maßnahmen lassen sich Webseiten deutlich beschleunigen und die Serverlast nachhaltig reduzieren. Moderne Webtechnologien wie Komprimierung, Caching und optimierte Bildformate gehören heute zu den wichtigsten Werkzeugen für performante Webanwendungen