Enable HTTP/2 & HTTP/3

This commit is contained in:
chriz committed 2026-10-20 12:02:30 +02:00
1 parent 014422e0b6
commit ac8468ca76
10 files changed
+258 -25

No files matched your search

+35 -2
View File
@@ -2,11 +2,44 @@ Options +FollowSymLinks
RewriteEngine on
# Redirect duplicate homepage URLs (/main.html and /index.php) to canonical root /
RewriteRule ^main\.html$ / [R=301,L]
RewriteCond %{THE_REQUEST} \s/+index\.php[\s?] [NC]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^index\.php$ / [R=301,L]
# Clean URL routing for .html pages
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{QUERY_STRING} ([a-zA-Z0-9-_.=&+%]*)
RewriteRule ^([0-9a-zA-Z\-]+).html$ index.php?action=$1&%1 [L]
# Custom 404 handler
ErrorDocument 404 /index.php?action=404
# Advertise HTTP/3 (h3) support via Alt-Svc header
<IfModule mod_headers.c>
Header setIfEmpty Alt-Svc "h3=\":443\"; ma=86400"
</IfModule>
# Gzip / Deflate Compression for Core Web Vitals & PageSpeed
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/ld+json image/svg+xml
</IfModule>
# Browser Caching for Static Assets
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType application/pdf "access plus 7 days"
ExpiresByType font/ttf "access plus 1 year"
</IfModule>
<Files .htaccess>
order allow,deny
deny from all
Require all denied
</Files>
+3 -3
View File
@@ -4,9 +4,9 @@ FROM php:8.5-apache-trixie
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" \
&& printf "date.timezone = Europe/Berlin\nexpose_php = Off\nsession.cookie_httponly = 1\nsession.use_strict_mode = 1\n" > "$PHP_INI_DIR/conf.d/99-custom.ini"
# Enable Apache modules and harden server signature
RUN a2enmod rewrite headers expires deflate \
&& printf "ServerTokens Prod\nServerSignature Off\n" > /etc/apache2/conf-available/security-hardening.conf \
# Enable Apache modules (including HTTP/2) and harden server signature
RUN a2enmod rewrite headers expires deflate http2 \
&& printf "ServerTokens Prod\nServerSignature Off\nProtocols h2 h2c http/1.1\n" > /etc/apache2/conf-available/security-hardening.conf \
&& a2enconf security-hardening
# Copy application code
+1
View File
@@ -48,6 +48,7 @@ switch ($action) {
break;
default:
http_response_code(404);
$action = '404';
$content = $loadFile('view/error.php');
}
+7 -2
View File
@@ -1,4 +1,9 @@
User-agent:EmailCollector
User-agent: EmailCollector
Disallow: /
sitemap: https://www.dialyse-berlin.net/sitemap.xml.gz
User-agent: *
Allow: /
Disallow: /api.php
Sitemap: https://www.dialyse-berlin.net/sitemap.xml
Sitemap: https://www.dialyse-berlin.net/sitemap.xml.gz
+40
View File
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.dialyse-berlin.net/</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://www.dialyse-berlin.net/leistungen.html</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://www.dialyse-berlin.net/praxis.html</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://www.dialyse-berlin.net/team.html</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://www.dialyse-berlin.net/kontakt.html</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://www.dialyse-berlin.net/files/dialyse_flyer.pdf</loc>
<lastmod>2026-10-20</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
</urlset>
BIN
View File
Binary file not shown.
+158 -4
View File
@@ -13,9 +13,143 @@ $titles = [
'kontakt-formular' => 'Kontaktanfrage | Dialysezentrum Berlin-Mahlsdorf',
'impressum' => 'Impressum | Dialysezentrum Berlin-Mahlsdorf',
'datenschutz' => 'Datenschutzerklärung | Dialysezentrum Berlin-Mahlsdorf',
'404' => 'Seite nicht gefunden (404) | Dialysezentrum Berlin-Mahlsdorf',
];
$pageTitle = isset($titles[$action]) ? $titles[$action] : 'Dialysezentrum Berlin-Mahlsdorf';
$descriptions = [
'main' => 'Dialysezentrum Berlin-Mahlsdorf & Marzahn: Individuelle Hämodialyse, Online-HDF, nephrologische Ambulanz und ganzjährige Feriendialysen in Berlin.',
'leistungen' => 'Leistungen im Dialysezentrum Berlin-Mahlsdorf: Nephrologische Ambulanz, Hämodialyse, Online-HDF mit Nikkiso Haemo-Master, Fresenius BCM & Sonographie.',
'praxis' => 'Praxisausstattung, Dialyse-Schichten & Ambulanz-Sprechzeiten: 16 Plätze in Berlin-Mahlsdorf, 18 Plätze in Berlin-Marzahn und moderne Nikkiso-Dialysetechnik.',
'team' => 'Lernen Sie unser Ärzteteam kennen: Dr. med. Bianca Bischoff, Dr. med. Juliane Hoffzimmer, Dr. med. Claudia Körner und 23 engagierte Pflege- & Servicekräfte.',
'kontakt' => 'Kontakt & Anfahrt zum Dialysezentrum Berlin-Mahlsdorf (Thorner Str. 1, 12623 Berlin) und zur Satellitendialyse Marzahn (Blumberger Damm 130, 12685 Berlin).',
'kontakt-formular' => 'Senden Sie uns Ihre Anfrage bequem online über das Kontaktformular des Dialysezentrums Berlin-Mahlsdorf für Termine, Feriendialysen oder allgemeine Fragen.',
'impressum' => 'Impressum und Pflichtangaben der Berufsausübungsgemeinschaft Dr. med. Bianca Bischoff & Dr. med. Juliane Hoffzimmer – Dialysezentrum Berlin-Mahlsdorf.',
'datenschutz' => 'Datenschutzerklärung und Informationen zum Schutz Ihrer personenbezogenen Daten gemäß DSGVO im Dialysezentrum Berlin-Mahlsdorf.',
'404' => 'Die angeforderte Seite wurde leider nicht gefunden. Zurück zur Startseite des Dialysezentrums Berlin-Mahlsdorf.',
];
$currentAction = isset($action) ? $action : 'main';
$pageTitle = isset($titles[$currentAction]) ? $titles[$currentAction] : 'Dialysezentrum Berlin-Mahlsdorf';
$pageDescription = isset($descriptions[$currentAction]) ? $descriptions[$currentAction] : $descriptions['main'];
$baseUrl = 'https://www.dialyse-berlin.net';
if ($currentAction === '404') {
$robotsMeta = 'noindex, nofollow';
$canonicalUrl = null;
} elseif (in_array($currentAction, ['impressum', 'datenschutz', 'kontakt-formular'], true)) {
$robotsMeta = 'noindex, follow';
$canonicalUrl = $baseUrl . '/' . $currentAction . '.html';
} elseif ($currentAction === 'main') {
$robotsMeta = 'index, follow';
$canonicalUrl = $baseUrl . '/';
} else {
$robotsMeta = 'index, follow';
$canonicalUrl = $baseUrl . '/' . $currentAction . '.html';
}
$schemaGraph = [
[
'@type' => 'MedicalClinic',
'@id' => $baseUrl . '/#organization',
'name' => 'Dialysezentrum Berlin-Mahlsdorf',
'alternateName' => 'Zentrum für Nephrologie und Dialyse – Dr. med. Bianca Bischoff & Dr. med. Juliane Hoffzimmer',
'url' => $baseUrl . '/',
'logo' => $baseUrl . '/img/logo_dialysezentrum.png',
'image' => $baseUrl . '/img/gallery/praxis1.jpg',
'description' => $descriptions['main'],
'medicalSpecialty' => 'https://schema.org/Nephrology',
'telephone' => '+49-30-5662484',
'email' => 'kontakt@dialyse-berlin.net',
'address' => [
'@type' => 'PostalAddress',
'streetAddress' => 'Thorner Straße 1',
'postalCode' => '12623',
'addressLocality' => 'Berlin',
'addressRegion' => 'Berlin',
'addressCountry' => 'DE',
],
'geo' => [
'@type' => 'GeoCoordinates',
'latitude' => 52.5078291,
'longitude' => 13.6092903,
],
'hasMap' => 'https://www.google.com/maps/place/Dialysezentrum+Berlin-Mahlsdorf/@52.5078291,13.6092903,17z/data=!3m1!4b1!4m6!3m5!1s0x47a84991f9c57f7f:0xad4486f559442067!8m2!3d52.5078291!4d13.6092903!16s%2Fg%2F1tdqghgn',
'openingHoursSpecification' => [
[
'@type' => 'OpeningHoursSpecification',
'dayOfWeek' => ['Monday', 'Wednesday', 'Friday'],
'opens' => '07:00',
'closes' => '20:00',
],
[
'@type' => 'OpeningHoursSpecification',
'dayOfWeek' => ['Tuesday', 'Thursday', 'Saturday'],
'opens' => '07:00',
'closes' => '13:00',
],
],
'department' => [
'@type' => 'MedicalClinic',
'name' => 'Dialysezentrum Berlin-Mahlsdorf – Satellitendialyse Marzahn',
'medicalSpecialty' => 'https://schema.org/Nephrology',
'telephone' => '+49-30-5662484',
'email' => 'kontakt@dialyse-berlin.net',
'address' => [
'@type' => 'PostalAddress',
'streetAddress' => 'Blumberger Damm 130 (Eingang: Pritzhagener Weg 21)',
'postalCode' => '12685',
'addressLocality' => 'Berlin',
'addressRegion' => 'Berlin',
'addressCountry' => 'DE',
],
'geo' => [
'@type' => 'GeoCoordinates',
'latitude' => 52.5428128,
'longitude' => 13.5716785,
],
'hasMap' => 'https://www.google.com/maps/place/Dialysezentrum+Berlin-Mahlsdorf+LC/@52.5428128,13.5716785,17z/data=!3m1!4b1!4m6!3m5!1s0x47a84991f9d5111b:0xda0b4785760166c5!8m2!3d52.5428128!4d13.5716785!16s%2Fg%2F1ts_5mmj',
],
'employee' => [
[
'@type' => 'Physician',
'name' => 'Dr. med. Bianca Bischoff',
'jobTitle' => 'Fachärztin für Innere Medizin und Nephrologie',
'medicalSpecialty' => 'https://schema.org/Nephrology',
],
[
'@type' => 'Physician',
'name' => 'Dr. med. Juliane Hoffzimmer',
'jobTitle' => 'Fachärztin für Innere Medizin und Nephrologie',
'medicalSpecialty' => 'https://schema.org/Nephrology',
],
[
'@type' => 'Physician',
'name' => 'Dr. med. Claudia Körner',
'jobTitle' => 'Fachärztin für Innere Medizin',
],
],
],
];
if ($canonicalUrl && $currentAction !== 'main') {
$schemaGraph[] = [
'@type' => 'BreadcrumbList',
'itemListElement' => [
[
'@type' => 'ListItem',
'position' => 1,
'name' => 'Startseite',
'item' => $baseUrl . '/',
],
[
'@type' => 'ListItem',
'position' => 2,
'name' => trim(explode('|', $pageTitle)[0]),
'item' => $canonicalUrl,
],
],
];
}
?>
<!DOCTYPE html>
<html lang="de">
@@ -24,9 +158,28 @@ $currentAction = isset($action) ? $action : 'main';
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?=htmlspecialchars($pageTitle)?></title>
<meta name="language" content="de">
<meta name="description" content="Dialysezentrum Berlin-Mahlsdorf: Ganzjährige Feriendialysen und individuelle Betreuung im modernen Zentrum für Nephrologie und Dialyse.">
<meta name="robots" content="index, follow">
<meta name="description" content="<?=htmlspecialchars($pageDescription)?>">
<meta name="robots" content="<?=htmlspecialchars($robotsMeta)?>">
<?php if($canonicalUrl): ?>
<link rel="canonical" href="<?=htmlspecialchars($canonicalUrl)?>">
<?php endif; ?>
<!-- Open Graph / Link Preview Meta Tags -->
<meta property="og:type" content="website">
<meta property="og:locale" content="de_DE">
<meta property="og:site_name" content="Dialysezentrum Berlin-Mahlsdorf">
<meta property="og:title" content="<?=htmlspecialchars($pageTitle)?>">
<meta property="og:description" content="<?=htmlspecialchars($pageDescription)?>">
<?php if($canonicalUrl): ?>
<meta property="og:url" content="<?=htmlspecialchars($canonicalUrl)?>">
<?php endif; ?>
<meta property="og:image" content="<?=$baseUrl?>/img/gallery/praxis1.jpg">
<meta property="og:image:width" content="1024">
<meta property="og:image:height" content="768">
<meta property="og:image:alt" content="Dialysezentrum Berlin-Mahlsdorf – Praxisgebäude in der Thorner Straße 1">
<!-- Schema.org Structured Data (JSON-LD) -->
<script type="application/ld+json"><?=json_encode(['@context' => 'https://schema.org', '@graph' => $schemaGraph], JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE)?></script>
<link rel="icon" href="/img/favicon.ico?v=<?=filemtime(__DIR__ . '/../img/favicon.ico')?>" type="image/x-icon">
<link rel="icon" href="/img/favicon.png?v=<?=filemtime(__DIR__ . '/../img/favicon.png')?>" type="image/png">
@@ -81,6 +234,7 @@ $currentAction = isset($action) ? $action : 'main';
<a href="/" class="site-logo" title="Dialysezentrum Berlin-Mahlsdorf &ndash; Startseite">
<img src="/img/logo_dialysezentrum.png?v=<?=filemtime(__DIR__ . '/../img/logo_dialysezentrum.png')?>"
alt="Dialysezentrum Berlin-Mahlsdorf &ndash; Zentrum für Nephrologie &amp; Dialyse"
width="915" height="199"
class="site-logo-img">
</a>
+2 -2
View File
@@ -56,7 +56,7 @@
</div>
<div>
<a href="/img/gallery/praxis1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis1.jpg')?>" data-lightbox="main" data-title="Die Praxis von außen" class="gallery-item" style="display: block;">
<img src="/img/gallery/praxis1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis1.jpg')?>" alt="Die Praxis von außen">
<img src="/img/gallery/praxis1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis1.jpg')?>" alt="Die Praxis von außen" width="1024" height="768" loading="lazy" decoding="async">
<div class="gallery-overlay">
<span class="gallery-caption">Die Praxis von außen &bull; Thorner Straße</span>
</div>
@@ -70,7 +70,7 @@
<div class="grid-2" style="align-items: center; margin-bottom: 2.5rem;">
<div>
<a href="/img/gallery/startseite1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/startseite1.jpg')?>" data-lightbox="main" data-title="Sprechzimmer" class="gallery-item" style="display: block;">
<img src="/img/gallery/startseite1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/startseite1.jpg')?>" alt="Sprechzimmer">
<img src="/img/gallery/startseite1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/startseite1.jpg')?>" alt="Sprechzimmer" width="632" height="1024" loading="lazy" decoding="async">
<div class="gallery-overlay">
<span class="gallery-caption">Modern ausgestattetes Sprechzimmer</span>
</div>
+6 -6
View File
@@ -127,32 +127,32 @@
<div class="gallery-grid">
<a href="/img/gallery/praxis3.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis3.jpg')?>" data-lightbox="practice" data-title="Freundlicher Wartebereich &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis3.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis3.jpg')?>" alt="Freundlicher Wartebereich">
<img src="/img/gallery/praxis3.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis3.jpg')?>" alt="Freundlicher Wartebereich" width="1024" height="768" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Freundlicher Wartebereich</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/praxis4.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis4.jpg')?>" data-lightbox="practice" data-title="Nikkiso DBB-EXA Dialysegeräte &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis4.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis4.jpg')?>" alt="Moderne Nikkiso DBB-EXA Dialysegeräte">
<img src="/img/gallery/praxis4.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis4.jpg')?>" alt="Moderne Nikkiso DBB-EXA Dialysegeräte" width="682" height="1024" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Nikkiso DBB-EXA Dialysegeräte</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/praxis5.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis5.jpg')?>" data-lightbox="practice" data-title="Gepflegter Vorgarten &amp; Außenbereich &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis5.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis5.jpg')?>" alt="Gepflegter Vorgarten und Außenbereich der Praxis">
<img src="/img/gallery/praxis5.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis5.jpg')?>" alt="Gepflegter Vorgarten und Außenbereich der Praxis" width="1200" height="800" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Vorgarten &amp; Außenbereich</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/praxis6.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis6.jpg')?>" data-lightbox="practice" data-title="Die Praxis von außen &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis6.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis6.jpg')?>" alt="Die Praxis von außen">
<img src="/img/gallery/praxis6.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis6.jpg')?>" alt="Die Praxis von außen" width="1024" height="768" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Die Praxis von außen</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/praxis7.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis7.jpg')?>" data-lightbox="practice" data-title="Empfang &amp; Anmeldung &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis7.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis7.jpg')?>" alt="Empfang und Anmeldung im Dialysezentrum">
<img src="/img/gallery/praxis7.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis7.jpg')?>" alt="Empfang und Anmeldung im Dialysezentrum" width="1024" height="560" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Empfang &amp; Anmeldung</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/praxis8.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis8.jpg')?>" data-lightbox="practice" data-title="Ärztliches Sprechzimmer &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/praxis8.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis8.jpg')?>" alt="Ärztliches Sprechzimmer und Untersuchungsraum">
<img src="/img/gallery/praxis8.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/praxis8.jpg')?>" alt="Ärztliches Sprechzimmer und Untersuchungsraum" width="1024" height="771" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Ärztliches Sprechzimmer</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
+6 -6
View File
@@ -115,32 +115,32 @@
<div class="gallery-grid">
<a href="/img/gallery/behandlung1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung1.jpg')?>" data-lightbox="services" data-title="Individueller Dialyseplatz &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/behandlung1_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung1_thumb.jpg')?>" alt="Individueller Dialyseplatz mit Nikkiso DBB-EXA">
<img src="/img/gallery/behandlung1_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung1_thumb.jpg')?>" alt="Individueller Dialyseplatz mit Nikkiso DBB-EXA" width="600" height="400" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Individueller Dialyseplatz</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/behandlung2.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung2.jpg')?>" data-lightbox="services" data-title="Dialyseplatz mit Nikkiso-Technik &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/behandlung2_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung2_thumb.jpg')?>" alt="Dialyseplatz mit Nikkiso Dialysegerät">
<img src="/img/gallery/behandlung2_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/behandlung2_thumb.jpg')?>" alt="Dialyseplatz mit Nikkiso Dialysegerät" width="600" height="400" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Dialyseplatz mit Nikkiso-Technik</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/leistung1.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung1.jpg')?>" data-lightbox="services" data-title="Komfort-Dialyseplatz am Fenster &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/leistung1_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung1_thumb.jpg')?>" alt="Komfort-Dialyseplatz am Fenster">
<img src="/img/gallery/leistung1_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung1_thumb.jpg')?>" alt="Komfort-Dialyseplatz am Fenster" width="600" height="446" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Komfort-Dialyseplatz am Fenster</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/leistung2.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung2.jpg')?>" data-lightbox="services" data-title="Blick in die Behandlungsräume &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/leistung2_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung2_thumb.jpg')?>" alt="Blick vom Flur in die hellen Behandlungsräume">
<img src="/img/gallery/leistung2_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung2_thumb.jpg')?>" alt="Blick vom Flur in die hellen Behandlungsräume" width="600" height="427" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Blick in die Behandlungsräume</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/leistung3.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung3.jpg')?>" data-lightbox="services" data-title="Dialyseraum mit Patienten-TV &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/leistung3_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung3_thumb.jpg')?>" alt="Dialyseraum mit mehreren Behandlungsplätzen und TV">
<img src="/img/gallery/leistung3_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung3_thumb.jpg')?>" alt="Dialyseraum mit mehreren Behandlungsplätzen und TV" width="600" height="425" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Dialyseraum mit Patienten-TV</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>
<a href="/img/gallery/leistung4.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung4.jpg')?>" data-lightbox="services" data-title="Dialyseplätze mit Blick ins Grüne &bull; Dialysezentrum Berlin-Mahlsdorf" class="gallery-item">
<img src="/img/gallery/leistung4_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung4_thumb.jpg')?>" alt="Dialyseplätze am Erkerfenster mit Blick ins Grüne">
<img src="/img/gallery/leistung4_thumb.jpg?v=<?=filemtime(__DIR__ . '/../img/gallery/leistung4_thumb.jpg')?>" alt="Dialyseplätze am Erkerfenster mit Blick ins Grüne" width="600" height="400" loading="lazy" decoding="async">
<div class="gallery-overlay"><span class="gallery-caption">Dialyseplätze mit Blick ins Grüne</span></div>
<div class="gallery-zoom-icon" aria-hidden="true"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg></div>
</a>