2016-03-21 9 views
1

Für ein größeres Xpages-Projekt müssen wir Substitutionsregeln verwenden, um SEO-freundliche URLs bereitzustellen. Wir müssen Regeln definieren, ähnlich wie diese:IBM Domino - Internetseiten + Ersetzung durch '?' In eingehenden Regelfehlern

Incoming URL pattern: /*/products?* 
Replacement pattern: /web.nsf/view.xsp?lang=*&* 

Diese Substitution sollte mit URL zB arbeiten:

/cz/products?start=1&count=20 

und Ersatz

/web.nsf/view.xsp?lang=cz&start=1&count=20 

Aber wir gerade herausgefunden, dass bei eingehenden Regel enthält '?' Es gibt einfach Fehler 404 zurück. Wir haben festgestellt, dass dies hier http://www-10.lotus.com/ldd/nd8forum.nsf/DateAllFlatWeb/a8162420467d5b45852576c7007fc045?OpenDocument gemeldet wird. Gibt es eine Problemumgehung oder eine Lösung für diese Situation? In der Dokumentation werden solche Einschränkungen nicht erwähnt ... was in der Tat sehr bedeutsam ist, weil wir die Regel nicht neu definieren können, um sie an unsere (sehr häufige) Situation anzupassen.

Irgendeine Idee, wie man das repariert?

Antwort

0

Ich glaube nicht, dass Sie dieses Problem leicht lösen können.

Wenn Sie nicht eine einfache Lösung finde ich Sie auf diesen zwei Ansätze aussehen würde vorschlagen:

  1. Sie DSAPI Filter bauen und Ihre individuelle Substitutionen dort definieren (auf diese Weise die Geschwindigkeit nicht betroffen sein werden) .
  2. Sie zeigen Anfragen auf einzelne xsp und dass xsp eingehenden Anfragen überprüft und leitet sie an geeigneten Ort (basierend auf Ihren benutzerdefinierten Ersetzungen).
+0

Danke. Ich habe Ihr Projekt hier https://github.com/dpastov/domino-dsapi-handler angeschaut ... aber sein C basiert und wir brauchen Windows Version für Produktionsserver und Linux eins für Entwicklung ... Ich würde lieber versuchen zu vermeiden dies –

+0

Dann versuchen Sie herauszufinden, ob Punkt 2 für Sie akzeptabel ist. Was ist mit einem weiteren Server vor Domino? Ist es eine Option? –

+1

Ich habe gerade festgestellt, dass ich wahrscheinlich vermeiden kann? überhaupt und make URL so etwas wie:/cz/products/start = 1 & count = 20 und dann anpassen eingehende URL-Muster zu/*/Produkte/* –