Seite 26 von 53
RewriteRules zum Problem Trailing-Slashes
Verfasst: Mi 21. Jun 2006, 16:47
von panti
Im Moment ist folgendes nicht möglich:
http://www.domain.ch/xyz
man muss den URL explizit mit einem Slash beenden, also so
http://www.domain.ch/xyz/
Die Rules einfach durch folgende ersetzen (gilt nur für drei Unterverzeichnisse), dann klappt es (wer den Code effizienter gestalten kann, bitte melden!):
@stese: evtl. beim nächsten Update einbinden?
Code: Alles auswählen
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/(.*).html$ front_content.php?parts[]=$1&parts[]=$2&parts[]=$3&artname=$4 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/$ front_content.php?parts[]=$1&parts[]=$2&parts[]=$3 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/\.]+)$ front_content.php?parts[]=$1&parts[]=$2&parts[]=$3 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/(.*).html$ front_content.php?parts[]=$1&parts[]=$2&artname=$3 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/$ front_content.php?parts[]=$1&parts[]=$2 [QSA,L]
RewriteRule ^([^/]+)/([^/\.]+)$ front_content.php?parts[]=$1&parts[]=$2 [QSA,L]
RewriteRule ^([^/]+)/(.*).html$ front_content.php?parts[]=$1&artname=$2 [QSA,L]
RewriteRule ^([^/]+)/$ front_content.php?parts[]=$1 [QSA,L]
RewriteRule ^([^/\.]+)$ front_content.php?parts[]=$1 [QSA,L]
RewriteRule ^(.*).html$ front_content.php?artname=$1 [QSA,L]
RewriteRule ^$ front_content.php [QSA,L]
Gruss
Panti
Verfasst: Do 22. Jun 2006, 12:07
von rene04
ich hab da auch noch ne frage. die rewrite engine wird ja über die htaccess gestartet und abgeschaltet. jetzt hab ich aber in der apache config auch schon ein RewrriteEngine On stehen + Options FollowSymLinks. is immo kein problem, funktioniert.
jetzt hab ich auf meiner site nen directory listing für ein bestimmtes verzeichnis eingebaut zum sachen downloaden(wird später duch modul ersetzt). in diesem listing werden mir aber leider keine symlinks angezeigt.

wenn ich in der htaccess dann vor RewriteEngine On schreibe: Options FollowSymLinks oder +FollowSymLinks bekomm ich beim aufruf von der site nen 500 error. nehm ich die options aus der htaccess geht die site problemlos.
was kann das sein?
gruesse
Verfasst: Do 22. Jun 2006, 13:03
von stese
keine ahnung, ich kenne mich mit servern und diesen ganzen modrewrite geschichten nicht wirklich aus. ich habe nur das contenido abgeändert dass es damit nutzbar ist. aber wende dich mal an der forum von modrewrite.de - die können dir da eher helfen denke ich
Verfasst: Do 22. Jun 2006, 13:05
von rene04
und da sagte darvin damals das nur das beste genmaterial überlebt. hmmm, da kannte er mich noch net

war das falsche verz. sorry.
gruesse
Rewrite klappt, doch Hauptnavi fehlt ?!?
Verfasst: Mo 26. Jun 2006, 09:53
von spinat
Hallo Rewrite-Fans,
habe gerade die 4.6.8 (original Stese) installiert - das klappt auch wunderbar und das mod_rewrite läuft problemlos. Allerdings habe ich keine Hauptnavi mehr ?!? Die Ausgabe im Frontend sieht so aus:
----
<html>
<head>
<base href="
http://xxx.xxx.xxx/contenido-4.6.8/cms/"><link rel="stylesheet" type="text/css" href="css/style.css">
<title>Willkommen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="CMS Contenido 4.6.8">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000" style="margin:0px">
<center><table width="100%" height="100%" border="0" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" cellspacing="0" cellpadding="0">
<tr>
<td width="*" height="89" valign="top"> </td>
<td width="180" valign="top" bgcolor="F0F0F0" style="border: 0px; border-left: 1px; border-right: 1px; border-top: 0px; border-color: #C3C3C3; border-style: solid;"> </td>
<td width="530" valign="top" background="upload/bilder/banner.jpg" style="border: 0px; border-left: 0px; border-right: 1px; border-bottom: 0px; border-color: #C3C3C3; border-style: solid;"><table valign="bottom"><tr><td><valign="left"><a href="/contenido-4.6.8/" class="additionalnavi">English</a></td></tr></table></td>
<td width="*" valign="top"> </td>
</tr>
<tr>
<th colspan="4" height="2" bgcolor="CC0000"> </th>
</tr>
<tr>
<td rowspan="3" valign="top"> </td>
<td rowspan="2" width="150" valign="top" bgcolor="F0F0F0" style="border: 0px; border-left: 1px; border-right: 1px; border-top: 0px; border-color: #C3C3C3; border-style: solid;"><br></td>
<td rowspan="3" width="530" valign="top" style="border: 0px; border-left: 0px; border-right: 1px; border-bottom: 0px; border-color: #C3C3C3; border-style: solid;">
<table><tr><td height="8"></td></tr><tr><td><h1 class="content">Bla Bla</h1></td></tr><tr><td><p></p></td></tr><tr><td><br><p></p></td></tr></table></td>
<td height="295" valign="top"></td>
</tr>
<tr>
<td valign="top" rowspan="2"></td>
<td height="8"></td>
</tr>
<tr>
<td valign="top" height="*" bgcolor="F0F0F0" style="border: 0px; border-left: 1px; border-right: 1px; border-bottom: 0px; border-color: #C3C3C3; border-style: solid;"> </td>
<td></td>
</tr>
</table></center>
</body>
</html>
---
Hat jemand eine Idee, was da schiefgehen könnte ?
Gruß
Ben
Verfasst: Mo 26. Jun 2006, 09:53
von rene04
hallo,
jetzt habe ich ein weiteres problem. ich habe 2 mandanten. für den ersten klappt das nun alles wunderbar, nur eben für den zweiten nicht. ich vermute mal ganz stark das das an der index.php liegt welche auf das verz /cms weiterleitet.
wie mach ich das nun das ich wieder auf den zweiten mandanten komme im frontend?
gruesse
Verfasst: Mo 26. Jun 2006, 09:56
von stese
die htaccess in das mandantenverzeichnis legen, die modrewrite einstellungen aus contenido/config.php in die [mandantenverzeichnis]/config.php schieben, so dass die mandanten einzeln konfigurierbar bleiben. die verschiedenen domains der mandanten direkt auf das mandantenverzeichnis pointen lassen.
Verfasst: Mo 26. Jun 2006, 10:16
von rene04
also ich habe nun folgendes getan:
- htaccess aus / gelöscht
- htaccess in /cms und /consolve gelegt und das rewritebase verz angepasst: /cms + /consolve
- in der /contenido/includes/config.php wird nach dem ort der htaccess gefragt. was geb ich denn da nun an. hab ja 2.
gruesse
Verfasst: Mo 26. Jun 2006, 10:19
von mvf
rene04 hat geschrieben:a
- in der /contenido/includes/config.php wird nach dem ort der htaccess gefragt. was geb ich denn da nun an. hab ja 2.
gruesse
schau mal was stese grade dir vor deiner frage geraten hatte
die modrewrite einstellungen aus contenido/config.php in die [mandantenverzeichnis]/config.php schieben
immer erst lesen dann nachfragen
Verfasst: Mo 26. Jun 2006, 10:55
von rene04
soweit habe ich das nun mal umgesetzt. was ist mit der index.php? soll die gelöscht werden?
gruesse rene
Verfasst: Mo 26. Jun 2006, 11:03
von mvf
rene04 hat geschrieben:soweit habe ich das nun mal umgesetzt. was ist mit der index.php? soll die gelöscht werden?
gruesse rene
ach rene jetzt komm
stese hat doch genau geschrieben was zu tun ist
Code: Alles auswählen
die verschiedenen domains der mandanten direkt auf das mandantenverzeichnis pointen lassen
Verfasst: Mo 26. Jun 2006, 11:18
von rene04
gut. funktioniert! das rewrite bei mandant no2 allerdings nicht.
gruesse
Verfasst: Mo 26. Jun 2006, 11:39
von mvf
rene04 hat geschrieben:gut. funktioniert! das rewrite bei mandant no2 allerdings nicht.
gruesse
wenn du es genauso gemacht hast wie bei mandant 1, sollte es gehen
nochmal:
contenido/includes/config.php den unteren abschnitt für MR ausschneiden (!) und in 'alle' mandanten configs kopieren, also nach cms/config.php und consolve/config.php
die htaccessen dann jeweils nach cms/config.php und consolve/config.php
legen, nicht ins root
anschliessend die mandanten mit mydomain/cms/ bzw mydomain/consolve aufrufen, bzw die domains für die mandanten dahin zeigen lassen
Verfasst: Di 27. Jun 2006, 16:34
von micha667
also irgendwie will das bei mir nicht.. hab mich jetzt durch die 27 seiten des threads geackert...muß aber trotzdem nochmal nachfragen:
die installation sieht bei mir so aus wie immer:
xyz.server.de/wwwXX/con/cms/ (frontend)
xyz.server.de/wwwXX/con/contenido/ (backend)
installation von contenido und die .htaccess (sowie die dazugehörige index) liegen also im ordner "con".
einstellungen:
$cfg['mod_rewrite']['rootdir'] = '/con/';
in der .htaccess:
RewriteBase /cms
müsste doch eigentlich korrekt sein?! kriege aber den "Internal Server Error" obwohl ich genau weiß, daß rewrite auf dem server geht.
jemand ne idee?
danke
gruß
micha
Verfasst: Di 27. Jun 2006, 18:59
von mvf
wo liegt die .htacess?
in con? oder im webroot der domain?