Original AdvancedMod Rewrite 4.6.15

panti
Beiträge: 40
Registriert: Mi 16. Nov 2005, 20:34
Kontaktdaten:

Optimierungsvorschlag

Beitrag von panti » Do 25. Mai 2006, 09:36

Hi Stese

Auf Zeile 930 in front_content.php steht folgender Code:

Code: Alles auswählen

$str_all = preg_replace("/([\"|\'|=])front_content\.php(.?|.+?)([\"|\'|>])/ie", "stripslashes('\\1'.ModRewrite::build_new_url('\\2').'\\3')", $str_all);
Würde es die Replace-Performance verbessern, wenn du diesen preg_replace durch preg_replace_callback ersetzen würdest?

Gruss
Pantelis

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

Beitrag von stese » Fr 26. Mai 2006, 08:41

ja ist möglich - werde ich bei der nächsten gelegenheit mit einbauen

i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt » So 28. Mai 2006, 01:40

Bei mir werden Umlaute im Rewriting weggelassen. Ist das Absicht oder ein Bug? Ich hätte gedacht, dass Umlaute wie ä, ö, ü und ß zu ae, oe, ue und ss umgewandelt würden?

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

Beitrag von stese » So 28. Mai 2006, 09:36

ja das lag an der falschen utf-8 konvertierung der datei includes/functions.api.string.php - entweder ersetzt du diese aus einem früheren bundle oder nimmst das eben auf der website aktualisierte bundle und ersetzt die datei dort.

@panti
ich habe die callback funktion mal eingebaut, bringt jedoch nix.

test bei meiner eigenen seite - startseite:
mit preg_preplace - parameter e - 0,0115 sekunden
mit preg_replace_callback - 0,0114 sekunden

insgesamt kann es auch nicht so wirklich viel schneller werden, da die ersetzungsfunktion ziemlich umfangreich ist, und somit die eigentlichen preg_match bedingungen eine eher untergeordnete rolle spielen.

wenn du in den quelltext meiner seite gehst findest du als letzte zeile einen kommentar mit der ausführzeit dieser ersetzungs funktionen.

panti
Beiträge: 40
Registriert: Mi 16. Nov 2005, 20:34
Kontaktdaten:

.htaccess richtig anpassen

Beitrag von panti » Mo 29. Mai 2006, 18:38

Hallo

Meine Contenido-Installation befindet sich unter <path>/contenido/
Das Backend liegt unter <path>/contenido/contenido/
Das Frontend unter <path>/contenido/cms/

http://www.domain.ch/ zeigt auf <path>

Nun habe ich die .htaccess ins <path> gestellt und folgende Anpassungen gemacht:

Code: Alles auswählen

RewriteBase /

#Verzeichnisse auschliessen
RewriteRule ^(backup|cgi-bin|cp|images|modlogan|old|webalizer)/.*$ - [L]

#upload Verzeichnis zugänglich machen
RewriteRule ^(css|js|upload)/(.*)$ contenido/cms/$1/$2 [QSA,L]
...
RewriteRule ^(.*).html$ contenido/cms/front_content.php?artname=$1 [QSA,L]
RewriteRule ^$ contenido/cms/front_content.php [QSA,L]

#Aufrufe der "front_content.php" funktionistüchtig machen
RewriteRule ^front_content.php.*$ contenido/cms/front_content.php [QSA,L]
Ich habe nicht alle Rules eingefügt. Zur Veranschaulichung habe ich mich nur auf das Wesentliche konzentriert.

Es läuft, doch ich finde, dass diese Anpassungen nicht optimal bzw. richtig richtig sind. Oder irre ich mich da? Wer hat eine optimale Lösung?

Vielen Dank für die Hilfe.
Pantelis

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

Beitrag von stese » Mo 29. Mai 2006, 21:50

nimm meine htaccess und passe die rewrite base an.

panti
Beiträge: 40
Registriert: Mi 16. Nov 2005, 20:34
Kontaktdaten:

wo platzieren?

Beitrag von panti » Mo 29. Mai 2006, 22:57

Hi Stese

Wo platziere ich die .htaccess-Datei? Unter <path>. Die Stamm-URL muss http://www.domain.ch/ lauten.

maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag von maccaroni » Di 30. Mai 2006, 06:13

morgen

die .htaccess muss in deinem installationsverzeichnis liegen, also www.domain.ch/contenido/

in der .htaccess-datei dann unter

RewriteBase anpassen auf «/contenido/cms»

wenn du die contenido-installation nicht im root selber installiert hast musst du halt die index.php ins root verschieben und den include-path anpassen (contenido/contenido/includes/config.php).

hoffe, nichts falsches erklärt zu haben :-)

gruss ronan

effex
Beiträge: 55
Registriert: So 13. Mär 2005, 14:03
Kontaktdaten:

Beitrag von effex » Di 30. Mai 2006, 19:28

Zunächst möchte ich mich für die tolle Arbeit bei stese bedanken.

Ich habe aber ein Problem:
In meiner Mandanteneinstellung ist folgender Pfad als Web-Adresse definiert

Code: Alles auswählen

https://ssl-server.com/domain.de/cms/
Generiert wird allerdings:

Code: Alles auswählen

https://ssl-server.com/cms/
Ein Test in der Standardversion verlief positiv.
Und es funktioniert auch, wenn ich den entsprechenden Eintrag in der config.php mache. Das sollte aber nicht Sinn der Sache sein.

Wie lässt sich der richtige Pfad für Mandanten generieren?
Zuletzt geändert von effex am Di 30. Mai 2006, 20:05, insgesamt 1-mal geändert.

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

Beitrag von mvf » Di 30. Mai 2006, 20:04

wie sieht denn deine rewrite base in der htacess aus?

im original steht:

Code: Alles auswählen

# achtung bitte basisverzeichnis anpassen!
RewriteBase /cms
schon mal mit

Code: Alles auswählen

# achtung bitte basisverzeichnis anpassen!
RewriteBase /domain.de/cms
versucht
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

effex
Beiträge: 55
Registriert: So 13. Mär 2005, 14:03
Kontaktdaten:

Beitrag von effex » Di 30. Mai 2006, 20:11

wie sieht denn deine rewrite base in der htacess aus, und wo liegt die?
Habe 'RewriteBase /domain.de/cms' und 'RewriteBase /cms' ausprobiert. Geht nicht.

Die htaccess-Datei liegt im Verzeichnis 'cms'.

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

Beitrag von mvf » Di 30. Mai 2006, 20:15

mal probiert die htaccess ins root zu legen mit /domain.de/cms
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

effex
Beiträge: 55
Registriert: So 13. Mär 2005, 14:03
Kontaktdaten:

Beitrag von effex » Di 30. Mai 2006, 20:37

mal probiert die htaccess ins root zu legen mit /domain.de/cms
Das funktioniert. Allerdings müsste ich jetzt meinen ganzen Server umorganisieren bzw. einrichten, da es sich hierbei nur um ein Unterverzeichnis handelt.

Und was ist mit den anderen Mandanten?

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

Beitrag von mvf » Di 30. Mai 2006, 20:40

wenn ich recht erinnere gibt es da schon posts zu, also einfach mal diesen thread rückwärts quer lesen, und vor allem auch die aktuellen docs zur mr-version von stese aus dem zip beachten
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

abrek
Beiträge: 103
Registriert: Mi 25. Jan 2006, 12:50
Kontaktdaten:

Beitrag von abrek » Do 1. Jun 2006, 15:31

Hallo!

Ich habe die aktuelle Version ( AdvancedMod Rewrite 4.6.8 ) von stese eingespielt und installiert. Alles wie beschrieben ist.

Sobald ich mod_rewrite in config.php eingeschaltet und _.htaccess in .htaccess umbenannt habe,
bekomme ich im frontend sowie im backend immer wieder Fehler 500.

Ich weiß bestimmt, dass Server .htaccess unterstützt.
Woran kann es liegen?

Dank im Voraus.
Beste Grüße
abrek

Gesperrt