Hallo,
wenn ich diesen einfüge funktioniert meine Seite mit http://example.org/de/ bzw. http://example.org/fr/ aber sämtliche CSS / JS Dateien werden nicht mehr gefunden.
Für die JS und CSS-Dateien muss natürlich der Pfad als absoluter angegeben werden.
du meinst mit absolute Angabe http://www./example.org/css/meinedatei.css?
Das geht natürlich auch, aber /css/meinedatei.css sollte reichen. Dann muss natürlich etwas wie
RewriteCond %{REQUEST_FILENAME} ! -f
ganz oben gesetzt werden. Damit die Regeln nur angewendet werden, wenn es die angeforderte Datei nicht gibt.
Kennst du zufällig dafür ein gutes am besten deutsches Tutorial? Gerne würde meine Seite der Reihe nach so umbauen. Ich habe derzeit nur 5 Seiten zzgl. der Produkt Seite.
Fang mal so an: webdir/.htaccess:
#RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?seite=$1
$_SERVER['DOCUMENT_ROOT']/inhalte/Fische.html:
<header>
<h1>Tolle Seite über Fische</h1>
</header>
<main>
<p>Fische schwimmen im Wasser.</p>
</main>
$_SERVER['DOCUMENT_ROOT']/inhalte/Vögel.html:
<header>
<h1>Tolle Seite über Vögel</h1>
</header>
<main>
<p>Vögel fliegen in der Luft.</p>
</main>
$_SERVER['DOCUMENT_ROOT']/inhalte/Kühe.html:
<header>
<h1>Tolle Seite über Kühe</h1>
</header>
<main>
<p>Kühe fressen Gras.</p>
</main>
$_SERVER['DOCUMENT_ROOT']/inhalte/index.html:
<header>
<h1>Tolle Seite über Tiere</h1>
</header>
<main>
<p>Hier erfahren Sie alles über Tiere</p>
</main>
$_SERVER['DOCUMENT_ROOT']/templates/site_header.html:
<!doctype html>
<html lang="de-DE">
<head>
<title>Tolle Webseite</title>
<meta charset="utf-8">
</head>
<body>
$_SERVER['DOCUMENT_ROOT']/templates/site_footer.html:
<footer>
<p>Besuchen Sie uns wieder!</p>
</footer>
</body>
</html>
$_SERVER['DOCUMENT_ROOT']/templates/site_menue.html:
<nav>
<ul>
<li><a href="/index">Tiere</a></li>
<li><a href="/Vögel">Vögel</a></li>
<li><a href="/Fische">Fische</a></li>
<li><a href="/Kühe">Kühe</a></li>
</ul>
</nav>
$_SERVER['DOCUMENT_ROOT']/index.php:
<?php
$header_file = $_SERVER['DOCUMENT_ROOT'] . '/templates/site_header.html';
$footer_file = $_SERVER['DOCUMENT_ROOT'] . '/templates/site_footer.html';
$menue_file = $_SERVER['DOCUMENT_ROOT'] . '/templates/site_menue.html';
if (! isset($_GET['seite'])) {
$_GET['seite']=$_SERVER['DOCUMENT_ROOT'] . '/inhalte/index.html';
} else {
$_GET['seite']=$_SERVER['DOCUMENT_ROOT'] . '/inhalte/' . $_GET['seite'] . '.html';
}
if ( (! is_file($_GET['seite']) or (! is_readable($_GET['seite']) ) {
header('Status:404');
$_GET['seite'] = $_SERVER['DOCUMENT_ROOT'] . '/inhalte/index.html';
}
$site = file_get_contents($header_file)
. file_get_contents($_GET['seite'])
. file_get_contents($site_menue)
. file_get_contents($menue_file);
echo $site;
Das ist schon fast der Anfang eines CMS...