Hey together,
the link below in fact should help to solve this issue.
On my webserver I cannot customize the mod_rewrite nor is it installed. Thus I'm going to code an alternative procedure. It's like the link above describes:
1) You have to build a sitemap with hardcoded links but in phpwcms manner - no relative links - also for images, etc.
2) You have to upload a .htaccess file as described in the link with at least the following content:
Code: Select all
<Files index>
ForceType application/x-httpd-php
</Files>
3) Furthermore you have to code a very simple loader.php file that encodes search engine friendly links:
Code: Select all
<?php
////////////////////////////////////////////////////////////////////////////////
// Skript zur Bildung von $HTTP_GET_VARS per URI-String ohne mod_rewrite
////////////////////////////////////////////////////////////////////////////////
// Autor: Sebastian Röbke <sebastian.roebke@web.de>
// Letzte Änderung: 2001-11-17
////////////////////////////////////////////////////////////////////////////////
// Anwendung:
// Statt Query Strings (index.php?param1=value1¶m2=value2) sollen
// Variablenname und -wert Paare an das Skript per URI übergeben werden
// (index/param1/value1/param2/value2).
// Dies hat den Vorteil, dass die Seite durch Suchmaschinen erfasst werden kann,
// da dynamisch erzeugte Seiten normalerweise ausgeschlossen werden.
////////////////////////////////////////////////////////////////////////////////
// Installation:
// Für den Apache muss eine Force-Type Anweisung konfiguriert werden.
// Diese kann in einer .htaccess Datei des entsprechenden Verzeichnisses
// abgelegt werden.
// Der Inhalt dieser .htaccess lautet beispielsweise wie folgt:
//
// <Files index>
// ForceType application/x-httpd-php
// </Files>
//
// Diese Anweisung bewirkt, dass im beispielhaften Aufruf
// http://localhost/index die Datei "index" durch PHP ausgeführt wird, ohne eine
// ensprechende Endung vorzuweisen.
////////////////////////////////////////////////////////////////////////////////
// Konfiguration:
// Als einziger zu konfigurierender Wert des Skripts ist der Name anzugeben,
// unter dem dieses durch die oben genannte Apache-Konfiguration erreicht wird,
// um die Parameter des URI ab dort auflösen zu können. In diesem Falle also
// define (SCRIPT_ALIAS, "index");
////////////////////////////////////////////////////////////////////////////////
// Funktionsweise:
// Das Skript zerlegt die SCRIPT_ALIAS folgenden Teile der URI in Name-Werte
// Paare und weist diese als $HTTP_GET_VARS zu. Weiterhin stellt es die so
// gewonnenen Variablen entsprechend der PHP Konfiguration global zur
// Verfügung.
////////////////////////////////////////////////////////////////////////////////
// Beispiel:
// Ruft man /index/param1/value1/param2/value2 auf, so kann man per
// $HTTP_GET_VARS["param1"] und $HTTP_GET_VARS["param2"] auf die entsprechenden
// Werte zugreifen. Weiterhin sind (sofern register_globals = On ist) die
// Variablen $param1 und $param2 mit den entsprechenden Werten vorhanden.
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// Script Alias im URI
////////////////////////////////////////////////////////////////////////////////
define (SCRIPT_ALIAS, "loader");
// Request URI in Array wandeln
$url = explode("/",$REQUEST_URI);
// Position des SCRIPT_ALIAS im URI als Offset für das Query Array finden
$offset = array_search (SCRIPT_ALIAS,$url);
// Gesamten Query als Array erzeugen
$query = array_slice($url, $offset+1);
// Assoziatives Array (Name-Wert Paar) erzeugen
while (list($key,$value) = each($query))
{
if ((($key+1) % 2) != 0)
{
$index_buffer = $value;
}
else
{
$HTTP_GET_VARS[$index_buffer] = $value;
// register_globals = On ?
if (get_cfg_var("register_globals")) $$index_buffer = $value;
}
}
// Speicher befreien ;-)
unset($url);
unset($offset);
unset($query);
unset($index_buffer);
unset($key);
unset($value);
?>
It's very easy and can be used without any further server requirements. However the only issue is to reach 1).
Jens