Ich hab gerade auf Redaxo 4.2 upgedatet, aber bis jetzt bin ich leider noch nicht wirklich zugfrieden. Mit dem neuen url_rewrite sind die Links erstens doppelt und zweitens haben die ein "+" (plus) anstatt dem "_". Das ist jetzt natürlich ziemlich dämlich, da ich nicht die ganzen Links meiner Seite verändern kann.
Ein Link sieht damit wie folgt aus:
http://www.domain.com/real+estate/real+estate.html
Folgendes Problem, ein Link der vorher lautete:
http://www.domain.com/real_estate
ist jetzt nicht mehr verfügbar, und geht zur Homepage. Das ist absolut nicht akzeptabel, da alle externen Links die ich habe nicht mehr funktionieren würden. Damit wäre ein Update auf Redaxo 4.2 unmöglich.
Wie kann ich das wieder so haben wie vorher???
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
-
- Beiträge: 53
- Registriert: 26. Jan 2007, 18:11
- Wohnort: Marbella
- Kontaktdaten: Website
sieht so aus als wäre bei dir rewrite-fullnames aktiv...
schau mal in die datei
/redaxo/include/addons/url_rewrite/config.inc.php
dort Zeile 24/25:
// Modify this line to include the right rewriter
require_once $UrlRewriteBasedir.'/classes/class.rewrite_fullnames.inc.php';
den include ändern in:
class.rewrite_mod_rewrite.inc.php
oder
class.rewrite_simple.inc.php
Beide Dateien sollten im Ordner ./classes/ vorhanden sein.
hoffe das ist was du gesucht hast.
schau mal in die datei
/redaxo/include/addons/url_rewrite/config.inc.php
dort Zeile 24/25:
// Modify this line to include the right rewriter
require_once $UrlRewriteBasedir.'/classes/class.rewrite_fullnames.inc.php';
den include ändern in:
class.rewrite_mod_rewrite.inc.php
oder
class.rewrite_simple.inc.php
Beide Dateien sollten im Ordner ./classes/ vorhanden sein.
hoffe das ist was du gesucht hast.
- Oliver.Kreischer
- Beiträge: 2508
- Registriert: 17. Dez 2004, 00:03
- Wohnort: Velbert - LA
- Kontaktdaten: Website
Hi,
das + hat mich auch sehr gewundert. Ich hab die Änderungen dann in der .htaccess gemacht. Eigentlich recht dumm von mir. Eine funktionierende Google Sitemap hab ich jetzt gerade nicht.
Ich werd die URLs wohl wieder umstellen. Google wird sich freuen....
Das mir dem + wüde ich gerne mal erklärt haben. So wie ich es kenne gehört es nicht zu den erlaubten Zeichen innerhalb einer Domain (auch wenn es Google nicht stört) und bei denen würde ich am liebsten bleiben.
Sehr gerne lerne ich natürlich dazu!
Viele Grüße
Oliver
das + hat mich auch sehr gewundert. Ich hab die Änderungen dann in der .htaccess gemacht. Eigentlich recht dumm von mir. Eine funktionierende Google Sitemap hab ich jetzt gerade nicht.
Ich werd die URLs wohl wieder umstellen. Google wird sich freuen....
Das mir dem + wüde ich gerne mal erklärt haben. So wie ich es kenne gehört es nicht zu den erlaubten Zeichen innerhalb einer Domain (auch wenn es Google nicht stört) und bei denen würde ich am liebsten bleiben.
Sehr gerne lerne ich natürlich dazu!
Viele Grüße
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!
ah, jetzt *g*
innerhalb einer domain ist das + nicht erlaubt aber in einem pfad schon.
die vermutung liegt nahe, dass hier urlencode() anstatt rawurlencode() verwendet wurde, unterschied:
echo urlencode("test test"); => "test+test"
echo rawurlencode("test test"); => "test%20test"
rawurlencode enkodiert nach RFC1738, urlencode nicht.
innerhalb einer domain ist das + nicht erlaubt aber in einem pfad schon.
die vermutung liegt nahe, dass hier urlencode() anstatt rawurlencode() verwendet wurde, unterschied:
echo urlencode("test test"); => "test+test"
echo rawurlencode("test test"); => "test%20test"
rawurlencode enkodiert nach RFC1738, urlencode nicht.
- Oliver.Kreischer
- Beiträge: 2508
- Registriert: 17. Dez 2004, 00:03
- Wohnort: Velbert - LA
- Kontaktdaten: Website
Hi,
Viele Grüße
Oliver
Das ist mir schon klar. Warum bleibt mann nicht bei "erlaubten" und für den User "bekannten" Zeichen?nente hat geschrieben:innerhalb einer domain ist das + nicht erlaubt aber in einem pfad schon.
Viele Grüße
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!
-
- Beiträge: 53
- Registriert: 26. Jan 2007, 18:11
- Wohnort: Marbella
- Kontaktdaten: Website
Hi nente,
ich hab vorher auch immer die class.rewrite_fullnames.inc.php benutzt, und zwar ohne Probleme und das sollte eigentlich auch die richtige sein.
Wenn ich eine deiner beiden vorgeschlagenen Klassen nehmen, dann sieht der Link noch schlimmer aus:
http://www.domain.com/4-0-Real+Estate.htm
Also der fullname_rewriter ist ok, das Problem liegt tatsächlich in der Datei:
redaxo\include\functions\function_rex_url.inc.php
in der Funktion rex_parse_article_name die die Funktion urlencode() benutzt. Diese Funktion kann je nach PHP-Version unterschiedliche Ergbebnisse liefern und hat meistens ein +.
Ich hab einfach die gesamte Funktion mit der aus Redaxo 4.1 ersetzt, jetzt funktioniert es wieder.
ich hab vorher auch immer die class.rewrite_fullnames.inc.php benutzt, und zwar ohne Probleme und das sollte eigentlich auch die richtige sein.
Wenn ich eine deiner beiden vorgeschlagenen Klassen nehmen, dann sieht der Link noch schlimmer aus:
http://www.domain.com/4-0-Real+Estate.htm
Also der fullname_rewriter ist ok, das Problem liegt tatsächlich in der Datei:
redaxo\include\functions\function_rex_url.inc.php
in der Funktion rex_parse_article_name die die Funktion urlencode() benutzt. Diese Funktion kann je nach PHP-Version unterschiedliche Ergbebnisse liefern und hat meistens ein +.
Ich hab einfach die gesamte Funktion mit der aus Redaxo 4.1 ersetzt, jetzt funktioniert es wieder.
- Markus.Lorch
- Beiträge: 682
- Registriert: 21. Okt 2007, 17:22
- Wohnort: Walheim
Hallo,
du kannst dir alternativ noch "realurl" anschauen. Das macht definitiv ein "-". Aber an einigen stellen unterscheiden sich hier die Pfade wieder von URL_Rewrite_fullnames. Insgesamt und rein persönlich gefällt mir realurl außerdem irgendwie besser (man kann es im Backend außerdem ein Stückchen anpassen) ... und ich hab an der eingebauten Artikelweiterleitung großen Gefallen gefunden.
du kannst dir alternativ noch "realurl" anschauen. Das macht definitiv ein "-". Aber an einigen stellen unterscheiden sich hier die Pfade wieder von URL_Rewrite_fullnames. Insgesamt und rein persönlich gefällt mir realurl außerdem irgendwie besser (man kann es im Backend außerdem ein Stückchen anpassen) ... und ich hab an der eingebauten Artikelweiterleitung großen Gefallen gefunden.
Grüße,
Markus Lorch
Tschüssle sagt Herr Nüssle
Markus Lorch
Tschüssle sagt Herr Nüssle
Quick n' dirty workaround: class.rewrite_fullnames.inc.php (sofern diese Klasse verwendet wird) in Zeile 345 ergänzen:
Viele Grüße
_Dirk
Code: Alles auswählen
$name = strtolower(rex_parse_article_name($name));
$name = str_replace('+', '-', $name);
_Dirk
@Merchenman
Ich würde nicht einzelne Dateien aus verschiedenen Versionen verwenden, dann lieber Dirks Lösung
hab mir jetzt mal beide Versionen vopn rex_url angeschaut. Die 4.2er arbeitet mit sprachspezifischen Ersetzungsregeln (was ein interessanter Ansatz ist, den ich persönlich aber nicht so toll finde).
Anyway, um im Redaxo 4.2er Kontext zu bleiben würde ich lieber das Leerzeichen in die Liste der "special_chars" aufnehmen, dann sollte das auch klappen und ist IMHO schöner als die Lösung von Dirk.
Die passenden Einträge in den lang-dateien sind "special_chars" und "special_chars_rewrite", zum Beispiel so ändern:
special_chars = ä| |ö|ü|Ä|Ö|Ü|ß|&
special_chars_rewrite = ae|_|oe|ue|Ae|Oe|Ue|ss|und
Grüße
Micha
Ich würde nicht einzelne Dateien aus verschiedenen Versionen verwenden, dann lieber Dirks Lösung
hab mir jetzt mal beide Versionen vopn rex_url angeschaut. Die 4.2er arbeitet mit sprachspezifischen Ersetzungsregeln (was ein interessanter Ansatz ist, den ich persönlich aber nicht so toll finde).
Anyway, um im Redaxo 4.2er Kontext zu bleiben würde ich lieber das Leerzeichen in die Liste der "special_chars" aufnehmen, dann sollte das auch klappen und ist IMHO schöner als die Lösung von Dirk.
Die passenden Einträge in den lang-dateien sind "special_chars" und "special_chars_rewrite", zum Beispiel so ändern:
special_chars = ä| |ö|ü|Ä|Ö|Ü|ß|&
special_chars_rewrite = ae|_|oe|ue|Ae|Oe|Ue|ss|und
Grüße
Micha
-
- Beiträge: 53
- Registriert: 26. Jan 2007, 18:11
- Wohnort: Marbella
- Kontaktdaten: Website
Klingt gut. Ich hab jetzt Dirks Lösung genommen, was schon mal ein Anfang ist.
Aber trotzdem stört mich noch etwas mehr. Der Link sieht jetzt wie folgt aus:
http://www.domain.com/real-estate/real-estate.html
Vorher war mein Link nur:
http://www.domain.com/real-estate/
Aber der funktioniert jetzt nicht mehr. Vorher war das alles etwas intelligenter, selbst wenn ich etwas falsch geschrieben habe bin ich zur richtigen Seite gekommen. Warum ist das alles geändert??
Aber trotzdem stört mich noch etwas mehr. Der Link sieht jetzt wie folgt aus:
http://www.domain.com/real-estate/real-estate.html
Vorher war mein Link nur:
http://www.domain.com/real-estate/
Aber der funktioniert jetzt nicht mehr. Vorher war das alles etwas intelligenter, selbst wenn ich etwas falsch geschrieben habe bin ich zur richtigen Seite gekommen. Warum ist das alles geändert??
Hallo zusammen,
ich hatte das selbe Problem. Mir haben die URLs der Klasse class.rewrite_fullnames.inc.php nicht gepasst. Das Ergebnis war zum Beispiel:
http://www.domain.com/tipps+und+infos/t ... infos.html
Nun habe ich zuerst die Lösung von nente umgesetzt und die Sprachdatei geändert. Vielen Dank an nente! Nun wurde z.B. folgende URL angezeigt:
http://www.domain.com/tipps-und-infos/t ... infos.html
Schon viel besser, das kein + und + mehr vorkam. Nur leider wurde bei einem Startartikel der Name immer noch zwei mal angezeigt. Der erste Name ist nach meinem Verständnis der Name der Kategorie und der zweite der Name des Artikels. Das ist ist in Ordnung, wenn der Artikelname nicht mit dem Namen der Kategorie übereinstimmt. Bei mir sind die Namen jedoch identisch. Dieses Problem habe ich wie folgt gelöst: Ich habe in der Klasse class.rewrite_fullnames.inc.php die Zeilen 320 bis 326 auskommentiert:
Nun werden die URLs nach meinen Vorstellungen angezeigt! Alternativ könnte man hier überprüfen, ob der Name der Kategorie nicht mit dem Artikelnamen übereinstimmt. Nur in diesem Fall wird der Artikelname dann hinzufügt:
Ist dieses Vorgehen in Ordnung oder ist es nicht gut diese Zeilen zu verändern? Gibt es eine andere (bessere) Lösung? Ich bitte um eure Meinung.
Gruß Martin
ich hatte das selbe Problem. Mir haben die URLs der Klasse class.rewrite_fullnames.inc.php nicht gepasst. Das Ergebnis war zum Beispiel:
http://www.domain.com/tipps+und+infos/t ... infos.html
Nun habe ich zuerst die Lösung von nente umgesetzt und die Sprachdatei geändert. Vielen Dank an nente! Nun wurde z.B. folgende URL angezeigt:
http://www.domain.com/tipps-und-infos/t ... infos.html
Schon viel besser, das kein + und + mehr vorkam. Nur leider wurde bei einem Startartikel der Name immer noch zwei mal angezeigt. Der erste Name ist nach meinem Verständnis der Name der Kategorie und der zweite der Name des Artikels. Das ist ist in Ordnung, wenn der Artikelname nicht mit dem Namen der Kategorie übereinstimmt. Bei mir sind die Namen jedoch identisch. Dieses Problem habe ich wie folgt gelöst: Ich habe in der Klasse class.rewrite_fullnames.inc.php die Zeilen 320 bis 326 auskommentiert:
Code: Alles auswählen
// if($ooa->isStartArticle())
// {
// $ooc = $ooa->getCategory();
// $catname = $ooc->getName();
// unset($ooc); // speicher freigeben
// $pathname = rex_rewriter_appendToPath($pathname, $catname);
// }
Code: Alles auswählen
if($ooa->isStartArticle())
{
$ooc = $ooa->getCategory();
$catname = $ooc->getName();
unset($ooc); // speicher freigeben
if ($ooa->getName() != $catname) {
$pathname = rex_rewriter_appendToPath($pathname, $catname);
}
}
Gruß Martin
- Richard.Laing
- Beiträge: 2105
- Registriert: 28. Aug 2005, 00:55
- Wohnort: Brühl / Rheinland
- Kontaktdaten: Website
ich hänge mich mal ran.
auf meinen servern klappten all realurls bestens. bei 1und1 servern habe ich aktuell auch das problem.
mit der obrigen anleitung klappt es...
gruß richy
auf meinen servern klappten all realurls bestens. bei 1und1 servern habe ich aktuell auch das problem.
mit der obrigen anleitung klappt es...
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de
Webseite www.on-laing.de smokezig.de www.smokezig.de
- ralf.schlott
- Beiträge: 625
- Registriert: 5. Dez 2007, 21:22
- Wohnort: Hamburch
- Kontaktdaten: Website
Problem '& oder &'
Dieser Thread hat bestimmt schon einigen geholfen.
Ich nutze diese Möglichkeiten schon sehr eingehend. Nun habe ich aber noch eine Frage:
Wenn ich in einer Kategorie ein & oder ein & nutze (letzteres wegen Konformität), würde ich das gerne in der URL komplett weglassen.
Könnte mir jemand sagen wie ich das realisiere?
Gruß & Dank
Ralf
Ich nutze diese Möglichkeiten schon sehr eingehend. Nun habe ich aber noch eine Frage:
Wenn ich in einer Kategorie ein & oder ein & nutze (letzteres wegen Konformität), würde ich das gerne in der URL komplett weglassen.
Könnte mir jemand sagen wie ich das realisiere?
Gruß & Dank
Ralf
- Danke für Redaxo! -
http://www.prenzlweb.de
http://www.prenzlweb.de
Re: Problem '& oder &'
Am unkompliziertesten geht's vermutlich dadurch, dass du in /redaxo/include/lang/ die beiden Sprachdateien de_de.lang und de_de_utf8.lang bearbeitest:rsi hat geschrieben:Wenn ich in einer Kategorie ein & oder ein & nutze (letzteres wegen Konformität), würde ich das gerne in der URL komplett weglassen.
Könnte mir jemand sagen wie ich das realisiere?
Code: Alles auswählen
# Sprachspezifische Sonderzeichen für Url-Umschreibung
special_chars = ä|ö|ü|Ä|Ö|Ü|ß|&
special_chars_rewrite = ae|oe|ue|Ae|Oe|Ue|ss|und
Viele Grüße!
_Dirk
- ralf.schlott
- Beiträge: 625
- Registriert: 5. Dez 2007, 21:22
- Wohnort: Hamburch
- Kontaktdaten: Website
Herrlich, vielen Dank!
Ich habe es durch
ersetzt.
Funktioniert hervorragend.
Gruß
Ralf
Ich habe es durch
Code: Alles auswählen
special_chars = ä|ö|ü|Ä|Ö|Ü|ß|&
special_chars_rewrite = ae|oe|ue|Ae|Oe|Ue|ss|
Funktioniert hervorragend.
Gruß
Ralf
- Danke für Redaxo! -
http://www.prenzlweb.de
http://www.prenzlweb.de