Original AdvancedMod Rewrite 4.6.15

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 24. Jan 2006, 18:10

stese hat geschrieben:keine ahnung - ich verwende die selbst und bei mir geht es problemlos - wie zeigt sich denn der fehler? wie schauen denn die urls aus?
liegt natürlich wieder an mir :(


scheint nicht die VP sitemap sondern meine selbstgebastelte headerInfoNavi :(

Code: Alles auswählen

<?php

#System properties in use:
#Type: navigation, Name: idcat_HeaderInfoNavi2
#Contains idcat of tree to be displayed in HeaderInfoNavi2


#Includes
cInclude("frontend", "includes/functions.navigation.php");
cInclude('classes', 'class.template.php');

#Get settings	
$cApiClient = new cApiClient($client);
$catStart = $cApiClient->getProperty('navigation', 'idcat_HeaderInfoNavi2');

if (!is_object($oClient)) {
	$oClient = new cApiClient($client);
}

#Get sub categories
$navigation = array ();
$navigation = createNavigationArray($catStart, $db);

#Output sub categories


$output = '';
if (count($navigation) > 0) {
	foreach ($navigation as $key => $data) {

            $output .= '<a href="'.$sess->url("front_content.php?idcat=".$data['idcat']).'" title="'.$data['name'].'">'.$data['name'].'</a> | ';
        }
}
if (strlen($output) > 0) {
	$output = substr($output, 0, strlen($output) - 3);
}

echo $output;
?>
denn da liegt der redirect auf die sitemap ich denke das wirds sein
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 » Di 24. Jan 2006, 18:41

äh ja. ich habs zwar nicht verstanden, liegt aber nicht am vpsitemap modul.

prinzipiell funktionieren auch alle bestehenden module bis auf wenige ausnahmen, die oftmals auf schlechte programmierung zurückzuführen sind:
- zugriff auf die systemvariablen $idcat, $idart, $lang etc über den $_GET oder $_REQUEST parameter. denn die werden ja im mod rewrite weggeschnitten, darum auch nicht mehr übergeben. (den fall hatte ich gerade bei der blätterbaren artikelliste - das kann dann natürlich nicht funktionieren)
- schreiben der urls inkl. dem cfgClient-Frontend-Pfad (denn sobald was in der url vor front_content.php steht wird die ersetzungsroutine nicht durchgeführt, da er annimmt, dass es sich um einen fremden webserver handelt)

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 24. Jan 2006, 19:12

komme nicht weiter

jetzt habe ich dein script zum leeren der urlnamen/aiase und neu bilden das erste mal benutzt, leer auch prima die aliase aber schreibt sie nicht neu

nun ist nichts mehr erreichbar :( muss ich jetzt etwa doch alle aliase neu manuell anlegen? denn nun ist natürlich nichts mehr erreichbar :(

HILFEEEEEEEEEEEEEE
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

PickPay
Beiträge: 164
Registriert: Di 2. Dez 2003, 19:38
Wohnort: Zürich
Kontaktdaten:

Beitrag von PickPay » Di 24. Jan 2006, 21:15

Sagt mal, wird eigentlich dieses Modul in einer nächsten Version von Contenido offiziell integriert? Ich habe mir nur kurz mal eine Testversion lokal installiert und ausprobiert und muss sagen: SEHR SCHÖN! Dies wird wohl all meine bisherigen .htaccess ersetzen, welche ich zum URL-Parsing verwendet habe.
Ich meine nur, dass wäre dann doch ein sehr guter und entscheidender Pluspunkt für die Verwendung von Contenido, wurden doch diesbezüglich schon mehrmals Kritiken geäussert.

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

Beitrag von stese » Di 24. Jan 2006, 22:28

hm f4b hat sich nicht dazu geäußert, ich denke es wird eine extra erweiterung bleiben, da es nicht direkt zum core gehört.

Noch ein genereller hinweis, vor allem auch an DiMiZu, der gleiches problem haben wird:
mvf hatte eben das problem dass er eine kategorie partout nicht hat aufrufen wollen und statt dessen auf die fehlerseite geleitet hat. das ist KEIN problem von der mod rewrite engine, sondern eine etwas eigenwillige funktionsweise der contenido internen funktion prResolvePathViaURLNames / prResolvePathViaCategoryNames.
die funktion sucht nach im englischen ähnlich klingenden kategorienamen um das aufrufen der fehlerseite zu verhindern. die grobe funktionsweise ist die, dass aus den lautzeichen des kategorienamens ein numerischer wert errechnet wird. dieser wert wird mit anderen werten in der datenbank verglichen und die entsprechende kategorie wird zurückgeliefert. das ist dann von vorteil, wenn die url von einem benutzer händisch aufgerufen wird und dieser sich verschreibt, dann kommt im regelfall trotzdem der korrekte inhalt angezeigt.

problem in dieser funktion: bei richtiger schreibweise, wird dennoch verglichen und falls es zufällig eine ähnlich klingende kategorie mit niedrigerer idcat gibt, wird diese zurückgeliefert und nicht die eigentlich korrekte kategorie. (das ist das problem bei DiMiZu)

behelfsmäßige Lösung:
die kategorie die ähnlich klingen könnte umbenennen! bzw. deren Alias umbenennen. danach in das verzeichnis cms/cache gehen und alle text-dateien in dem verzeichnis löschen!

ein lösungsansatz zur dauerhaften lösung wäre irgendwie eine max wert abfrage in den beiden funktionen die die kategorie liefert, dessen soundex wert am nächsten an dem übergebenen pfad liegt.

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 24. Jan 2006, 22:47

und auch an offizieeller stelle dank für deinen support

es soll nicht unerwähnt bleiben ;)
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

AlexUhde
Beiträge: 13
Registriert: Mi 6. Apr 2005, 13:04
Wohnort: Brisbane
Kontaktdaten:

Beitrag von AlexUhde » Mi 25. Jan 2006, 16:02

Ich hab da leider auch ein kleines Problem...

Soweit funktioniert hier jetzt alles, leider wird jeder link so dargestellt:

http://neu.optimahaus.de/homepages/29/d ... ueber-uns/

und nicht
http://neu.optimahaus.de/ueber-uns/

woran kann das liegen?

habe in der
.htaccess:

Code: Alles auswählen

# achtung bitte basisverzeichnis anpassen!
RewriteBase /cms

Danke

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

Beitrag von stese » Mi 25. Jan 2006, 16:05

in der config.php steht wohl der document root pfad.

öffne die config.php und ändere es auf den pfad aus sicht des webbrowsers in der die htaccess steht. (eigenschaft ist bei den modrewrite settings zu finden) also wenn die htaccess direkt im hauptverzeichnis (ohne unterverzeichnis) liegt, dann muss dort "/" stehen, wenn der komplette contenido inhalt UND die htaccess in einem unterverzeichnis liegt, muss der pfad zur htaccess zum unterverzeichnis gesetzt werden "/unterverzeichnis/"

AlexUhde
Beiträge: 13
Registriert: Mi 6. Apr 2005, 13:04
Wohnort: Brisbane
Kontaktdaten:

Beitrag von AlexUhde » Mi 25. Jan 2006, 16:29

Danke für die Promte Antwort!
Es hat wunderbar geklappt.

mfg
Alexander Uhde

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

Beitrag von stese » So 29. Jan 2006, 03:13

ok, das neue bundle steht (wie auf post 1 beschrieben) zum download zur verfügung:

changelog:
- bugfixes hinzugefügt ( http://contenido.org/forum/viewtopic.php?t=10611 )
- problem mit kundenlogin (404 bei bestimmten situationen) wurde behoben.
- methoden zum restore der aliase wurden hinzugefügt

- wie immer die installations.txt lesen

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

Beitrag von stese » So 29. Jan 2006, 12:52

und nun wurde auch der fehler von mvf und DiMiZu behoben. dass er falsche kategorien nimmt, sollte nicht mehr vorkommen. bundle steht aktualisiert bereit.

geänderte dateien insgesamt:
functions.general.php
class.modrewrite.php
front_content.php
front_crcloginform.inc.php

DiMiZu
Beiträge: 68
Registriert: Sa 8. Okt 2005, 12:49
Kontaktdaten:

Beitrag von DiMiZu » Fr 3. Feb 2006, 08:54

Super, vielen Dank!

MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Beitrag von MyAccount » So 5. Feb 2006, 22:40

Hallo,

funktioniert super. Was ich aber nicht verstehe...

Auf Deiner Seite wird jedesmal /index.html dahintergestellt. Woher kommt das? Kann man bei Startartikeln nicht auch den Artikel-Alias ausgeben lassen?

Statt:
  • cms.domain.tld/punkt1/punkt1_1/
    cms.domain.tld/punkt1/punkt1_1/artikel2.html
    cms.domain.tld/punkt1/punkt1_1/artikel3.html
lieber
  • cms.domain.tld/punkt1/punkt1_1/startartikel1.html
    cms.domain.tld/punkt1/punkt1_1/artikel2.html
    cms.domain.tld/punkt1/punkt1_1/artikel3.html

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

Beitrag von stese » So 5. Feb 2006, 22:43

ich habe mein eigenes navigationsmodul dass mir die url statt mit der idcat mit der idart ausgibt - daher wird bei mir auch der artikelname in der navigation angezeigt. mvf hatte meines wissens die standard navigation dahingehend angepasst dass es auch den artikel übergibt. suche mal im forum.

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

Beitrag von mvf » So 5. Feb 2006, 23:26

stese hat geschrieben:ich habe mein eigenes navigationsmodul dass mir die url statt mit der idcat mit der idart ausgibt - daher wird bei mir auch der artikelname in der navigation angezeigt. mvf hatte meines wissens die standard navigation dahingehend angepasst dass es auch den artikel übergibt. suche mal im forum.
... und zusätlich im core eingestellt, dass nicht immer ' -- Standardartikel -- ' dort steht wenn man nichts eingibt, sondern automatisch 'index' ;)
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

Gesperrt