Pretty URL: Link ohne "index.php" erzeugen Topic is solved
Pretty URL: Link ohne "index.php" erzeugen
Hallo,
bei einigen Providern ist mod_rewrite nicht möglich, so dass ich Pretty URL nutzen muss.
Mich stört im Link der Teil "index.php". Lässt sich das irgendwie unterdrücken?
bei einigen Providern ist mod_rewrite nicht möglich, so dass ich Pretty URL nutzen muss.
Mich stört im Link der Teil "index.php". Lässt sich das irgendwie unterdrücken?
Re: Pretty URL: Link ohne "index.php" erzeugen
Also Du musst überhaupt nichtsm266 wrote: ...
so dass ich Pretty URL nutzen muss.
...

Kurz: Nein.m266 wrote:
Mich stört im Link der Teil "index.php". Lässt sich das irgendwie unterdrücken?
Ohne die index.php kann das CMS nicht ausgeführt werden.
Und damit die index.php ausgeführt wird, muss entweder Dein Browser direkt auf diese index.php inklusive Variablen etc. verweisen, oder der Webserver mit Hilfe von mod_rewrite die angeforderte URL nach einem bestimmten Schema umschreiben.
Am Ende wird da auf dem Server auch nichts weiter als "index.php?page=angeforderte Seite" ausgeführt.
Re: Pretty URL: Link ohne "index.php" erzeugen
Hallo,
um nochmal die Fragestellung von dem obigen Threataufmacher aufzugreifen.
Kann man die index.php z.B. in der URL
"http://www.domain.de/index.php/de_DE/templates.html " definitiv nicht per
mod_rewrite Anweisung "wegretuschieren"?
Gruß
Jimbob
um nochmal die Fragestellung von dem obigen Threataufmacher aufzugreifen.
Kann man die index.php z.B. in der URL
"http://www.domain.de/index.php/de_DE/templates.html " definitiv nicht per
mod_rewrite Anweisung "wegretuschieren"?
Gruß
Jimbob
Re: Pretty URL: Link ohne "index.php" erzeugen
Mit mod_rewrite ist das natürlich möglich.
Aber bei m299 wird vom Provider mod_rewrite eben nicht ermöglicht, so dass er nur die internal pretty URLs verwenden kann.
Aber bei m299 wird vom Provider mod_rewrite eben nicht ermöglicht, so dass er nur die internal pretty URLs verwenden kann.
Re: Pretty URL: Link ohne "index.php" erzeugen
Hallo Nan,
vielen Dank für Deine Antwort.
Hättest Du einen Denkanstoss bzgl. der mod_rewrite Anweisung für mich?
Ich habe Serverzugriiff und kann die http.conf editieren.
Gruß
Jimbob
vielen Dank für Deine Antwort.
Hättest Du einen Denkanstoss bzgl. der mod_rewrite Anweisung für mich?
Ich habe Serverzugriiff und kann die http.conf editieren.
Gruß
Jimbob
Re: Pretty URL: Link ohne "index.php" erzeugen
Hier ein Auszug aus meiner Doku zu deiner Frage:
Mod_rewrite nutzen (Empfehlung)
In der Datei „.htaccess“ folgende Einträge zufügen (Die Datei muss sich im Root des CMS befinden; ggf. vorher anlegen):
#Options +FollowSymLinks
RewriteEngine on
# 301 Redirect all requests that don't contain a dot or trailing slash to
# include a trailing slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
# Rewrites urls in the form of /parent/child/
# but only rewrites if the requested URL is not a file or directory
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteCond %{REQUEST_FILENAME} !-d [NC]
RewriteRule ^(.+)$ index.php?page=$1 [QSA]
In der Datei „config.php“ folgendes ändern:
#Show mod_rewrite URLs in the menu?
$config['assume_mod_rewrite'] = true;
#Extension to use if you're using mod_rewrite for pretty URLs.
$config['page_extension'] = '.html';
Falls früher Pretty URL verwendet wurden, diesen Eintrag auf „false“ zu setzen:
$config['internal_pretty_urls'] = false;
Rechte für die Dateien zurücksetzen:
.htaccess: 644
config.php: 444
Wenn dein Provider mode_rewrite erlaubt, funktioniert es damit einwandfrei.
Gruß m266
Mod_rewrite nutzen (Empfehlung)
In der Datei „.htaccess“ folgende Einträge zufügen (Die Datei muss sich im Root des CMS befinden; ggf. vorher anlegen):
#Options +FollowSymLinks
RewriteEngine on
# 301 Redirect all requests that don't contain a dot or trailing slash to
# include a trailing slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
# Rewrites urls in the form of /parent/child/
# but only rewrites if the requested URL is not a file or directory
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteCond %{REQUEST_FILENAME} !-d [NC]
RewriteRule ^(.+)$ index.php?page=$1 [QSA]
In der Datei „config.php“ folgendes ändern:
#Show mod_rewrite URLs in the menu?
$config['assume_mod_rewrite'] = true;
#Extension to use if you're using mod_rewrite for pretty URLs.
$config['page_extension'] = '.html';
Falls früher Pretty URL verwendet wurden, diesen Eintrag auf „false“ zu setzen:
$config['internal_pretty_urls'] = false;
Rechte für die Dateien zurücksetzen:
.htaccess: 644
config.php: 444
Wenn dein Provider mode_rewrite erlaubt, funktioniert es damit einwandfrei.
Gruß m266
Re: Pretty URL: Link ohne "index.php" erzeugen
Hallo m266,
vielen Dank für Deine Hilfestellung.
Sorry, ich vergaß zu erwähnen, das ich eine MLE (Multilanguage) Version nutze.
Mit Deinen Einstellungen klappt soweit alles, nur bleibe ich leider bei einer Sprache
"hängen", d.h. ich kann die anderen Sprachen nicht ansurfen.
Eventl. noch eine Idee dazu?
Gruß
vielen Dank für Deine Hilfestellung.
Sorry, ich vergaß zu erwähnen, das ich eine MLE (Multilanguage) Version nutze.
Mit Deinen Einstellungen klappt soweit alles, nur bleibe ich leider bei einer Sprache
"hängen", d.h. ich kann die anderen Sprachen nicht ansurfen.
Eventl. noch eine Idee dazu?
Gruß
Re: Pretty URL: Link ohne "index.php" erzeugen
Poste mal einen Link, dann können dir sicher NaN oder cyberman helfen.
Re: Pretty URL: Link ohne "index.php" erzeugen
Klar, mache ich gerne.
Was macht Sinn zum drauf gucken - das cms mit den "Ureinstellungen", dh. ohne modrewrite Einstellungen oder mit dem Ergebnis Deines Vorschlages?
Gruß
Was macht Sinn zum drauf gucken - das cms mit den "Ureinstellungen", dh. ohne modrewrite Einstellungen oder mit dem Ergebnis Deines Vorschlages?
Gruß
Re: Pretty URL: Link ohne "index.php" erzeugen
mode_rewrite geht ja bei dir (außer MLE). Daher wäre m. E. die Variante mit mode_rewrite besser.
Ich bin auch kein Experte, aber NaN oder cyberman wissen sicher, woran es liegt, dass die MLE-Sache nicht geht.
Ich bin auch kein Experte, aber NaN oder cyberman wissen sicher, woran es liegt, dass die MLE-Sache nicht geht.
Re: Pretty URL: Link ohne "index.php" erzeugen
Ok, hier die Website:
Problem: Ich kann nach den letztgenannten Einstellungen nicht mehr zwischen den Sprachen switchen.
Ich bleibe auf FR "hängen".
Ich hoffe Ihr könnt helfen.
Danke schonmal im voraus.
gruß
Problem: Ich kann nach den letztgenannten Einstellungen nicht mehr zwischen den Sprachen switchen.
Ich bleibe auf FR "hängen".
Ich hoffe Ihr könnt helfen.
Danke schonmal im voraus.
gruß
Last edited by Jim_Bob on Thu Aug 14, 2008 6:29 am, edited 1 time in total.
Re: Pretty URL: Link ohne "index.php" erzeugen
Ich glaube bei der MLE Version wäre Alby der bessere Ansprechpartner.m266 wrote: Poste mal einen Link, dann können dir sicher NaN oder cyberman helfen.
Hast Du zwischenzeitlich noch etwas geändert?Jim_Bob wrote:
Problem: Ich kann nach den letztgenannten Einstellungen nicht mehr zwischen den Sprachen switchen.
Ich bleibe auf FR "hängen".
War gerade auf der Seite und das Umstellen der Sprachen scheint zu funktoinieren.
GELÖST: Pretty URL: Link ohne "index.php" erzeugen
Ja, stimmt, die Lösung ist da.
Vielen Dank für Deine Hilfe.
Folgender Eintrag in der .htaccess hat es gerichtet.
Die Anweisung
RewriteRule ^(.+)$ index.php?page=$1 [QSA]to
ändern zu
RewriteRule ^(.+)/(.+)$ index.php?hl=$1&page=$2 [QSA]
und in der config.php folgende Einstellungen vornehmen:
$config['assume_mod_rewrite'] = true;
$config['page_extension'] = '.html';
$config['internal_pretty_urls'] = true;
$config['use_hierarchy'] = false;
Leider muss man use_hierarchy auf false setzen, weil man sonst
beim ansurfen der Unterseiten wieder Probleme beim "switchen"
zu einer anderen Sprache hat.
gruß Jimbob
Vielen Dank für Deine Hilfe.
Folgender Eintrag in der .htaccess hat es gerichtet.
Die Anweisung
RewriteRule ^(.+)$ index.php?page=$1 [QSA]to
ändern zu
RewriteRule ^(.+)/(.+)$ index.php?hl=$1&page=$2 [QSA]
und in der config.php folgende Einstellungen vornehmen:
$config['assume_mod_rewrite'] = true;
$config['page_extension'] = '.html';
$config['internal_pretty_urls'] = true;
$config['use_hierarchy'] = false;
Leider muss man use_hierarchy auf false setzen, weil man sonst
beim ansurfen der Unterseiten wieder Probleme beim "switchen"
zu einer anderen Sprache hat.
gruß Jimbob
Re: GELÖST: Pretty URL: Link ohne "index.php" erzeugen
Das ist schade, weil dann die pretty URLs bei Modulen nicht funktionieren (z.B. NewsModule).Jim_Bob wrote:
Leider muss man use_hierarchy auf false setzen, weil man sonst
beim ansurfen der Unterseiten wieder Probleme beim "switchen"
zu einer anderen Sprache hat.
-
- New Member
- Posts: 3
- Joined: Mon Feb 02, 2009 4:16 pm
Re: Pretty URL: Link ohne "index.php" erzeugen
Geht nicht! 
Wenn ich "RewriteBase /" auf "RewriteBase /cms/" setze und die Weiterleitungen nach /cms/ wegmache, funktioniert es. Habe aber keine Lust auf Unterverzeichnis. Hat jemand eine Idee?
PS: Meins.net ist natürlich nicht meine reale Domain-Bezeichnung.

Code: Select all
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# 301 Redirect all requests that don't contain a dot or trailing slash to
# include a trailing slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
# Add www.
RewriteCond %{http_host} ^meins\.net [NC]
RewriteRule ^(.*) http://www.meins.net/$1 [R=301,L,NC]
# Remove SubDirectory + exception
RewriteRule ^$ /cms/ [QSA,L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule !^(mediawiki)(/.*)?$ /cms%{REQUEST_URI} [QSA,L]
# Rewrites urls in the form of /parent/child/
# but only rewrites if the requested URL is not a file or directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA]
PS: Meins.net ist natürlich nicht meine reale Domain-Bezeichnung.
Last edited by Keinen_Plan on Mon Feb 02, 2009 6:15 pm, edited 1 time in total.