_CH_K_1991_
Lieutenant
- Registriert
- Nov. 2008
- Beiträge
- 772
Hallo zusammen
Ich habe mich kürzlich mal an .htaccess Dateien gewagt, weil ich gerne saubere Url's für eine Website haben möchte.
Nur leider klappt dies noch nicht vollständig.
folgendes wäre das Ziel:
[TABLE="width: 750"]
[TR]
[TD]URL's mit Files im Root[/TD]
[TD]URL's mit Files in einem Ordner (erster Teil)[/TD]
[/TR]
[TR]
[TD]page.com/about[/TD]
[TD]page.com/products/product1[/TD]
[/TR]
[TR]
[TD]page.com/products[/TD]
[TD]page.com/products/product2[/TD]
[/TR]
[/TABLE]
Was bisher funktioniert:
-> Alle Pages welche im Root-Folder liegen werden korrekt aufgerufen und auch dargestellt.
Was noch nicht funktioniert:
-> Pages welche in einem Ordner liegen (welcher gleich heisst wie eine page) funktioniert nicht korrekt.
-> falsch eingegebene URI's möchte ich auf eine 404 Seite umleiten.
folgender Code ist die .htaccess Datei welche ich bisher erstellt habe:
und das wäre die index.php:
Vielen Dank für die Hilfe.
Gruss Matthias
Ich habe mich kürzlich mal an .htaccess Dateien gewagt, weil ich gerne saubere Url's für eine Website haben möchte.
Nur leider klappt dies noch nicht vollständig.
folgendes wäre das Ziel:
[TABLE="width: 750"]
[TR]
[TD]URL's mit Files im Root[/TD]
[TD]URL's mit Files in einem Ordner (erster Teil)[/TD]
[/TR]
[TR]
[TD]page.com/about[/TD]
[TD]page.com/products/product1[/TD]
[/TR]
[TR]
[TD]page.com/products[/TD]
[TD]page.com/products/product2[/TD]
[/TR]
[/TABLE]
Was bisher funktioniert:
-> Alle Pages welche im Root-Folder liegen werden korrekt aufgerufen und auch dargestellt.
Was noch nicht funktioniert:
-> Pages welche in einem Ordner liegen (welcher gleich heisst wie eine page) funktioniert nicht korrekt.
-> falsch eingegebene URI's möchte ich auf eine 404 Seite umleiten.
folgender Code ist die .htaccess Datei welche ich bisher erstellt habe:
Code:
ErrorDocument 404 /error404.php
RewriteEngine On
RewriteBase /
RewriteRule ^([a-zA-Z0-9]+)$ index.php?page=$1
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1/$2
und das wäre die index.php:
PHP:
<?php $website = "http://page.com";
$startpage = "home.php";
$head = "additional/head.php";
$header = "additional/header.php";
$footer = "additional/footer.php";
$sites = array("home", "about", "products");
if(empty($_GET['page'])){
include($head);
include($header);
include($startpage);
include($footer);}
elseif (!empty($_GET['page'])){
$site = $_GET['page'];
/*über diese Abfrage möchte ich falsch eingegebene URI's auf die Startseite umleiten oder in ein 404 Dokument*/
if (in_array("$site", $sites)){
$page = $_GET['page'] . ".php";
include($head);
include($header);
include("$page");
include($footer);
}
else {
include($head);
include($header);
include($startpage);
include($footer);
}
}
else
{
header("Location: $website");
}?>
Vielen Dank für die Hilfe.
Gruss Matthias
Zuletzt bearbeitet: