Original AdvancedMod Rewrite 4.6.15

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Original AdvancedMod Rewrite 4.6.15

Beitrag von stese » So 8. Jan 2006, 21:42

Hi,

lange hat es gedauert bis für die 4.6er Contenido Version das Bundle draussen ist. Nun ist es soweit.

Arbeitsweise ist Analog zu den Versionen 4.5.x und 4.4.x.

Den Sprung auf die 4.6er Version habe ich genutzt um einige Dinge zu ändern:
  • - Benutzung der Contenido eigenen Pathresolve Funktion
    - Vereinfachung der .htaccess so, dass diese einfacher erweitert werden kann
    - Unterstützung von mehreren Clients in einem CMS Verzeichnis indem die $client Variable ausgewertet wird
    - Erzeugt nun auf Wunsch immer kleingeschriebene URLs
    - Die ModRewrite Einstellungen können in den Backend des Contenido, in den Mandanteneinstellungen überschrieben werden!
    - Anker Tags werden nun nicht herausgefiltert, sondern bleiben an der URL bestehen
Einfach das Setup ausführen und bestehende Contenido Versionen werden automatisch an die Notwendigen Datenbankänderungen angepasst.

Wichtig: Wie immer gilt es vorher ein Backup seiner bestehenden Contenido Version zu machen (Files UND Datenbank) damit man im Falle des Falles wieder zurückwechseln kann!

Das jeweils aktuelle Bundle gibt es aus Gründen der besseren Wartbarkeit nur noch auf meiner Website herunterzuladen:
Advanced ModRewrite Bundle. Und wie immer Gilt es die beiliegende Installationsdatei vor dem Setup durchzulesen, da dann schon einige Fragen geklärt sind.

Update 16.04.06
ModRewrite Bundle der Version 4.6.8 ist erschienen. Basis ist die Out of the Box Version 4.6.8.4 von rezeptionist.

Update 03.06.06
es wurde die volle Unterstützung von Text-Ankern eingepflegt, also normale

Code: Alles auswählen

<a href="#top">

anker funktionieren nun einwandfrei.

Update 13.10.06
ModRewrite Bunde der Version 4.6.15 ist erschienen. Basis ist die offizielle Version 4.6.15.

Update 12.01.07
Diverse Bugfixes wurden integriert. Die Bugs traten hauptsächlich bei Nutzung der Funktion auf, die den kompletten Pfad in einer .html Datei darstellt und auf die Ordnerstruktur verzichtet.

Änderungen Bitte dem Changelog entnehmen. Weitere Infos wie immer der beiliegenden installation_cnt4.6.15.txt entnehmen bevor fragen gepostet werden. Parameter zur Kontrolle von Modrewrite über die Mandanteneinstellung entnehmt ihr bitte der beiliegenden datei:
docs/techref/frontend/frontend.customizing.html

Changelog

Code: Alles auswählen

CHANGELOG
=====================================================
2007-01-12
- diverse Bugfixe bei Modrewrite ohne Ordnerstruktur
- Bugfix bei Popups über TinyMCE. Wurde vorher nicht ersetzt, da 
  der TinyMCE standardmäßig statt ' den entsprechenden HTML Entity 
  ' geschrieben hat. Dieser Entity wird nun wieder "zurück"-
  konvertiert
- Bugfix Verlinkungen auf den Upload Ordner funktionierten im IE
  nicht, da dieser die Base Href Einstellungen dort ignorierte. 
  Nun wird allen upload/ Vorkommen der Mandantenpfad vorangestellt. 
- Bugfix der front_content.crcloginform.inc.php. Schreibfehler bei 
  URL zur Weiterleitung behoben.
- Defaultwert des einstellbaren Prozentsatzes für "ähnlich 
  klingende" URIs bei nicht gefundener Kategorie auf 75 gestellt.

2006-10-09
- Anpassung der Dokumentation für Frontend Customizing:
  contenido-4.6.15/docs/techref/frontend/frontend.customizing.html
- Ermöglichung von URLs ohne Ordnerstruktur:
  www.domain.de/kategorie1-kategorie2.artikel.html
  Alle Änderungen bei folgenden 3 Einstellungsparametern 
  erfordern ein Neu Aufbauen der Aliase. Folgendes Modul
  muss nach Änderung unten stehender drei Einstellungen
  1 x Aufgerufen werden (Bitte wirklich nur 1x!)
  <?php
    cInclude('classes','class.modrewrite.php');
    ModRewrite::reset_aliases();
  ?>
  Einstellungen:
  // Aktivierung 
  /* use categories as html file part? ( 1 = yes, 0 = none ) */
  $cfg["mod_rewrite"]['use_categories_as_html_file'] = 0;
  
  // Kategorie-Trenner:
  /* seperator for categories */
  $cfg["mod_rewrite"]['category_seperator'] = '-';

  // Kategorie-Artikel-Trenner
  /* seperator between category and article */
  $cfg["mod_rewrite"]['article_seperator'] = '.';
- Update Contenido Version 4.6.15

2006-08-06
- Problem bei doppelten URL-Encodings behoben

2006-08-02
- Ankerverweise auch bei deaktiviertem ModRewrite korrekt ausgefüllt

2006-07-25
- erweitertes Fehlerseiten-Handling
  * .htaccess ruft nun auch URIs nach folgendem Schema 
    korrekt auf: http://www.domain.de/kategorie
	(ohne abschließenden Slash)
  * falsch geschriebene Artikel in der URI können
    statt der Weiterleitung zum Startartikel eine Weiterleitung
	zur Fehlerseite konfiguriert werden. Dazu muss in den 
	Mandanteneinstellungen folgende Einstellung gesetzt werden:
	Typ: ModRewrite
	Name: redirect_invalid_article_to_errorsite
    Wert: true
  * Einstellbarer Prozentsatz für "ähnlich klingende" URIs
    bei nicht gefundener Kategorie, so dass grob falsch 
	geschriebene Pfadangaben zur Fehlerseite geleitet werden.
	Ahnlich klingende, weil verschriebene Pfade 
	(z.B. /dame/ bzw. /dahme/), werden auf vergleichsweise 
	prozentual ähnlich klingendste Kategorie weiter geleitet.
	Dazu muss in den Mandanteneinstellungen folgende 
	Einstellung gesetzt werden:
	Typ: ModRewrite
	Name: category_resolve_min_percentage
    Wert: 0-100
	
	Zum Beispiel
	Wert: 100 
	(nur exakt geschriebene URIs finden zum Ziel, bereits
	ein falsch geschriebener Buchstabe führt zur Fehlerseite)
	Wert: 85
	(URIs mit leichten Fehlern werden dennoch zu einer 
	Kategorie geleitet, die größer gleich 85% Übereinstimmung 
	in der Lautbestimmung hat)
	Wert: 0
	(Fehlerseite wird nie angezeigt, es wird bei Fehlern auch 
	zu Kategorien mit sehr niedriger Übereinstimmung geleitet)
- Chain hinzugefügt, dass im TinyMCE jeder interne Link mit 
  kompletten Parametern erzeugt wird, um bei mehrsprachigen 
  Websites korrekt hin und herlinken zu können.

2006-06-03
- HTML Anker werden nun unterstützt und automatisch in 
  volle URLs umgewandelt, damit die Sprungmarken auch mit 
  dem zwingend notwendigen Base-Href-Tag im Head der Seite
  funktionieren

2006-05-28
- UTF-8 konvertierte Umlaute wieder in ISO Format 
  geschrieben
- Update Contenido Version 4.6.8.5 von Beleuchtfix

2006-04-14
- Update Contenido Version 4.6.8.4 von Beleuchtfix
  http://contenido.org/forum/viewtopic.php?t=12026
- Update TinyMCE auf Version Version 2.0.5.1
- Bugfix bei Rückwandlung der Sprach-ID bei Verwendung 
  mehrerer Clients - Dank an Nicolas Dickinson für den Bugfix

2006-01-29
- manuelle Einpflegung Contenido-Core Bugfix 
  http://contenido.org/forum/viewtopic.php?t=10611
- BugFix FrontendLogin - Bei Logout 404er entfernt - 
  leitet nun auf die Fehlerseite oder Startseite weiter.
- Implementierung neuer Funktion zum Reset aller Aliases
  (mehr dazu unter Problemlösungen/Hinweise)
- Bugfix front_content.php unter bestimmten Umständen 
  wurde eine andere Seite als angefordert geladen, 
  Problem ist nun behoben

2006-01-20
- unterstützung mehrerer domains auf einen mandanten
  siehe thread:
  http://contenido.org/forum/viewtopic.php?p=68877#68877

2005-12-31
- Update Contenido Version 4.6.4 vom 2005-12-15
- Änderung der .htaccess Struktur!!!
- Unterstützung verschiedener Clients in einem Verzeichnis
- Verwendung der Contenido-eigenen PathResolver Funktion zum 
  Auflösen der URLs
- Akzeptieren des Parameters "idartlang" als einzigen Parameter
  in der eigentlichen front_content.php URL
- Überschreiben der ModRewrite Einstellungen durch 
  Mandanteneinstellungen im Backend möglich 
- Anpassung des Setups für noch einfachere Installation
- Entfernung falscher Zeichen in URLs (/?= am Ende)
- HTML-Anker in der URL bleiben erhalten
- Manuelle Einpflegung der Bugfixes aus Forum:
  http://contenido.org/forum/viewtopic.php?t=10905
  (Stand 2005-12-21, Ausnahme Newsletter-Verwaltung von HerrB)
  sowie
  http://contenido.org/forum/viewtopic.php?p=66712#66712
- Per Konfigurationsdatei einstellbar, ob URLs nur 
  Kleinbuchstaben enthalten sollen

2005-09-11
- Update auf Contenido Version 4.5.3b aus CVS 2005-09-09
- Entfernung FCK Editor, Standard Editor: TinyMCE
- Bugfix: Erkennt nun auch korrekt Artikel, die direkt in der Basiskategorie liegen.

2005-08-14
- bugfix in datei classes/class.modrewrite.php, methode build_new_url()
  behebt bug, dass keine url generiert wurde, falls paramater changelang fehlte.

2005-08-13
- Workaround Datei bei nichtfunktionierendem FCK Editor hinzugefügt
- hinzufügen von weiteren sonderzeichen in contenido core: includes/functions.api.string.php
  function: capiStrReplaceDiacritics()

2005-08-12
- geringfügige anpassung der .htaccess um weitere sprache
- erweiterte sonderzeichen in class.modrewrite.php für französische sprache (wird derzeit nicht verwendet)
- modrewrite_dbinstall.php hinzugefügt und modifiziert für update von älteren versionen
Zuletzt geändert von stese am Fr 12. Jan 2007, 19:47, insgesamt 7-mal geändert.

Garfieldt
Beiträge: 57
Registriert: Mi 10. Nov 2004, 12:05
Kontaktdaten:

Beitrag von Garfieldt » So 8. Jan 2006, 22:16

Wird es auch eine Version geben, die nur die geänderten Dateien enthält, habe schon Webseiten auf 4.6.4 laufen und möchte nicht die ganzen contenido dateien neu auf den Server kopieren. Kann man generell nicht auch nur die Hauptnavigation anpassen, damit hier die Links z.B. www.domain.de/cms/kategorie1/unterpunkt2 sind, habe leider im Forum noch keine Anleitung hierzu gefunden. Ich möchte an den Webseiten keine großen Änderungen vornehmen, da sie online bleiben müssen.

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » So 8. Jan 2006, 22:19

nein wird es meinerseits nicht geben - du kannst aber das bundle ziehen, nach "stese" über dateiübergreifendem suchen alle geänderten stellen ausfindig machen und manuell einfügen.

die hauptänderungen zurAdvancedModrewrite Version 4.5.3 sind allerdings nur in der front_content.php und der klasse class.modrewrite.php, function.modrewrite.php und der .htaccess gemacht worden - der rest wurde nicht angetastet - die 4 dateien wurden allerdings gewaltig angepasst.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 8. Jan 2006, 22:31

Zum Standard-Paket V4.6.4 wurden folgende Dateien geändert oder ergänzt:

Code: Alles auswählen

_.htaccess	.\
index.php	.\
front_content.php	.\cms\
.htaccess	.\cms\upload\
.htaccess	.\contenido\
class.modrewrite.php	.\contenido\classes\
config.misc.php	.\contenido\includes\
functions.api.string.php	.\contenido\includes\
functions.con.php	.\contenido\includes\
functions.general.php	.\contenido\includes\
functions.modrewrite.php	.\contenido\includes\
functions.str.php	.\contenido\includes\
functions.upl.php	.\contenido\includes\
globals_off.inc.php	.\contenido\includes\
include.client_edit.php	.\contenido\includes\
include.con_edit_form.php	.\contenido\includes\
include.con_editcontent.php	.\contenido\includes\
include.con_subnav.php	.\contenido\includes\
include.grouprights_subnav.php	.\contenido\includes\
include.right_top_blank.php	.\contenido\includes\
include.rights_subnav.php	.\contenido\includes\
include.str_aliases.php	.\contenido\includes\
include.subnav.php	.\contenido\includes\
include.tpl_subnav.php	.\contenido\includes\
include.upl_files_overview.php	.\contenido\includes\
pseudo-cron.inc.php	.\contenido\includes\
template.con_edit_form.html	.\contenido\templates\standard\
dbupdate.php	.\setup\
makeconfig.php	.\setup\
tables.txt	.\setup\data\
examples_misc6.sql	.\setup\data\examples\
functions.modrewrite.php	.\setup\lib\
config.php.tpl	.\setup\templates\
Folgende Hinweise beachten!!!

Angaben ohne Gewähr, ich hatte nur gerade ein geeignetes Tool da ... :wink:

Gruß
HerrB
Zuletzt geändert von HerrB am So 8. Jan 2006, 23:42, insgesamt 2-mal geändert.
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » So 8. Jan 2006, 23:09

danach muss das setup trotzdem noch einmal ausgeführt werden, da ein neues feld in der tabelle "art_lang" mit dem namen "urlname" hinzugefügt wurde und diese einen websicheren namen vom titel der artikel enthalten muss - sonst klappt das mod rewrite umwandeln nicht.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 8. Jan 2006, 23:34

Ja, war auch nur Service, ich nehme es wieder runter, bringt nicht so viel.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » So 8. Jan 2006, 23:36

nein passt schon, so meinte ich es nicht :) es ist halt nicht so ganz wenig dass man es leicht im nachhinein machen kann ... natürlich ist es kein thema das manuell zu ändern, nur is man dann auch 1,5h beschäfftigt.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 8. Jan 2006, 23:42

Ok, hatte ich mir zum Glück gerettet ... :wink:

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf » Mo 9. Jan 2006, 00:04

stese hat geschrieben: natürlich ist es kein thema das manuell zu ändern, nur is man dann auch 1,5h beschäfftigt.
ich habe das gestern nacht ;) locally wie folgt gemacht

mit einem 'passenden tool' ;) wie HerrB schrieb (in meinem fall proton) nach stese gesucht. ergebnis siehe post von HerrB (neige dann immer HerrnB zu schreiben :) )
dann habe ich eine synchroniesierung der verzeichnisse durchgeführt (z.b. mit totalcommander oder ähnlichem) und dabei eben nur die dateien aus HerrB's liste synchronisiert. das setup mit upgrade durchgeführt und gut war

all in all 20 min und nebenbei alle security fixes die stese mit eigebaut hat auch gleich übernommen. :)
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf » Mo 9. Jan 2006, 01:18

wenn ich es recht erlese aus dann sollte doch auch der artikelname.html als finale an der url hängen, oder?

bei mir endet es local als auch online immer nur auf ...lastKat/
kein ...lastKat/thisArticleName.html

???

habe ich da was missverstanden beim stöbern durch den code?
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » Mo 9. Jan 2006, 08:13

ja, hast du ;) den artikelnamen schreibt er rein, wenn deine normale url der front_content nicht nur die idcat übergibt sondern die idart - das heisst: navigationsmodul anpassen dass die idart als parameter hinten dran steht, dann macht er dir auch den artikelnamen. alternativ erkennt er in der neuen version auch die idartlang (die bis dahin ignoriert wurde)

phatbyte
Beiträge: 95
Registriert: Mi 2. Nov 2005, 14:05
Wohnort: Austria
Kontaktdaten:

Beitrag von phatbyte » Mo 9. Jan 2006, 15:52

hallo!

habe das teil installiert rewrite funktioniert auch - aber wenn ich im beispielinhalt zb. auf features --> content gehe springt er mir automatisch ins unterverzeichnis bildergalerie?! was kann das sein? auch wenn ich jetzt aufs root gehe komme ich automatisch in services --> hardware!?

danke für hilfe
oli

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » Mo 9. Jan 2006, 15:54

ist das ohne mod rewrite auch so? (also probiere es im deaktvierten zustand noch einmal) ich hab es nicht am beispiel layout getestet ... nur an live websites und da trat das problem nicht auf

phatbyte
Beiträge: 95
Registriert: Mi 2. Nov 2005, 14:05
Wohnort: Austria
Kontaktdaten:

Beitrag von phatbyte » Mo 9. Jan 2006, 15:59

habe modrewrite ausgeschaltet - fehler kommt nicht mehr :?

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » Mo 9. Jan 2006, 16:01

ok muss ich mir anschauen ....

Gesperrt