php.de

Zurück   php.de > Webentwicklung > Server, Hosting und Workstations

Server, Hosting und Workstations Server-Konfigurationsdateien (.htaccess/httpd.conf) und Arbeiten auf Serverebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.07.2011, 20:50  
Benutzer
 
Registriert seit: 24.10.2010
Beiträge: 65
PHP-Kenntnisse:
Anfänger
infi befindet sich auf einem aufstrebenden Ast
Standard mod_rewrite Slash am Ende mit Bedingung

Hallo,

Ich werkel im Moment mal wieder ein wenig an meinen rewrite_conditions und rewrite_rules.

Mein momentaner Stand:
Teil 1
Code:
#alles was auf index endet nach / umleiten
RewriteRule ^(.*)/index[/]$ http://domain.com/$1/ [R=301,L,NC]

#domain.com/language/modul/action/id.html
RewriteRule ^([a-zA-Z]{1}[a-zA-Z]{1})/([\.-_0-9a-zA-Z]+)/([\.-_0-9a-zA-Z]+)/([0-9]+)\.html$ ?lang=$1&modul=$2&action=$3&id=$4 [NC,L,QSA]
#domain.com/language/modul/action/
RewriteRule ^([a-zA-Z]{1}[a-zA-Z]{1})/([\.-_0-9a-zA-Z]+)/([\.-_0-9a-zA-Z]+)/$ ?lang=$1&modul=$2&action=$3 [NC,L,QSA]
#domain.com/language/modul/
RewriteRule ^([a-zA-Z]{1}[a-zA-Z]{1})/([\.-_0-9a-zA-Z]+)/$ ?lang=$1&modul=$2 [NC,L,QSA]
#domain.com/language/
RewriteRule ^([a-zA-Z]{1}[a-zA-Z]{1})/$ ?lang=$1 [NC,L,QSA]
Der folgende Abschnitt haut hin, allerdings wird immer ein Slash angehängt.
Teil 2
Code:
#falls kein Slash am Schluß vorhanden, wird umgeleitet auf URL mit Slash
RewriteCond %{REQUEST_URI} ^(.+)[^/]$
RewriteRule ^(.+)$ http://domain.com/$1/ [R=301,L,NC]
Wie ihr in Teil 1 seht, soll id nicht auf Slash, sondern auf .html enden.
Darum meine Idee, dass nach x Slashes die Bedingung nicht mehr gültig ist.
Teil 2 Meine Überlegung
Code:
#So sieht mein Versuch aus, der leider nicht funktioniert.
RewriteCond %{REQUEST_URI} ^(.+)[/]{0,3}(.+)[^/]$
RewriteRule ^(.+)$ http://domain.com/$1/ [R=301,L,NC]
bei folgenden Fällen soll ein Slash angehongen werden.
domain.com/language
domain.com/language/modul
domain.com/language/modul/action
domain.com/language/modul/action/id.html
^^ ab hier nicht mehr

Hat jemand ne Idee für mich und kann mir bei meinem Problem behilflich sein?

VG,

infi
infi ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.07.2011, 10:55  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Was willst du denn erreichen?

Ein Routing in dieser Art "language/modul/action/" wird für gewöhnlich nicht über Rewrite Regeln abgebildet, sondern im Framework nachgestellt.

Ein Beispiel
Code:
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
Hier wird die gesamte URI an die index.php weitergereicht und von dort aus weiter verarbeitet (Dispatch). Eine "Route" kann im Prinzip beliebig aufgebaut sein, wobei die letztendliche Funktion im Controller unter Umständen noch Parameter erwartet - diese Flexibilität bekommst du nicht in htaccess abgebildet.
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 27.07.2011, 16:09  
Benutzer
 
Registriert seit: 24.10.2010
Beiträge: 65
PHP-Kenntnisse:
Anfänger
infi befindet sich auf einem aufstrebenden Ast
Standard

Hallo Istegelitz,

Zitat:
Zitat von lstegelitz Beitrag anzeigen
Was willst du denn erreichen?
Ich möchte damit eine Suchmaschinen- und Benutzerfreundliche URL gestalten.
Zitat:
Zitat von lstegelitz Beitrag anzeigen
Ein Routing in dieser Art "language/modul/action/" wird für gewöhnlich nicht über Rewrite Regeln abgebildet, sondern im Framework nachgestellt. ...
... diese Flexibilität bekommst du nicht in htaccess abgebildet.
Das hatte ich mir fast gedacht und werde mir einen Dispatcher in PHP schreiben.

VG,

infi
infi ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[ZEND] Session::writeClose() immer am Ende des Skriptes ausführen Sirke PHP Einsteiger 1 09.06.2011 08:36
mod_rewrite URL-Umleitung zu Dateien in Verzeichnissen, mit Slash nach Parameter karthago Server, Hosting und Workstations 4 22.07.2010 16:15
prüfen ob slash vorhanden mod_rewrite taurus Server, Hosting und Workstations 0 05.02.2010 19:13
mod_rewrite mit slash/ohne slash funktioniert nur teilweise taurus Server, Hosting und Workstations 4 13.09.2009 12:57
[Erledigt] Inkrement Uhrzeit - von Startzeit bis Ende Ponton PHP Tipps 2008 6 10.10.2008 14:11
Ende Array erreicht? krackmoe PHP Tipps 2008 16 30.07.2008 19:04
Mit PHP am Ende einer TXT was ergänzen / Leerzeilen löschen DDogg PHP Tipps 2007 5 01.02.2007 10:32
URL - bedingung nixdorf PHP Tipps 2007 3 03.01.2007 01:14
Problem mit DIV -Bild soll am unteren Ende der Seite bleiben scheibo HTML, Usability und Barrierefreiheit 16 12.01.2006 16:54
neue datensätze am ende anfügen? Dilandau Datenbanken 3 12.12.2005 22:47
Am Ende jeder Zeile etwas einfügen lassen... PHP Tipps 2005-2 2 29.10.2005 05:56
if bedingung PHP Tipps 2005-2 4 14.06.2005 10:13
Layer am Ende einer Seite platzieren php1 HTML, Usability und Barrierefreiheit 2 21.03.2005 22:44
datensatz am ende einfügen....??? ckrentel PHP Tipps 2005 8 20.03.2005 21:06

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mod_rewrite slash, rewriterule slash am ende, htaccess slash am ende, rewrite condition slash anhängen, rewrite / am ende, rewriterule ^. \\.(. )\\.[0-9]\\.html /index.php?id=$1 [r=301,l,qsa,ne], php umleiten slash am ende, mod_rewrite mit und ohne slash, zend immer slash am ende, mod_rewrite anhängen, apache rewrite rule \ommit slash\, zend routing url ohne slash, modrewrite mit slahs, mod rewirte slash, slash am ende der url, rewrite slash anhängen, mod_rewrite schrägstrich, rewrite bedingung domain, schluss slash, rewrite zwei slash am ende

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:10 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum