2010-12-30 3 views
0

Ich benutze Googles benutzerdefinierte Suchmaschine in einer Drupal-Website. Ich verwende die Iframe-Hosting-Option. Ich erhalte den Fehler "Seite nicht gefunden". Versuchen Sie es hier: http://www.babymed.com/search. Suche nach "Schwangerschaftskalender".Google Benutzerdefinierte Suchmaschine (cse) Seite nicht gefunden in Drupal bei Verwendung von iframe Hosting-Option

Wenn ich ein paar Variablen der resultierenden URL nehme aus dem Query-String und lassen Sie nur diese Hinter der URL: cx = Partner-pub-8269249097348173% 253Ayqmzpr-2cr9 & COF = FORID% 253A10

Ich bekomme immer noch keine Ergebnisse. Irgendwelche Google CSE Experten da draußen?

Danke!

Antwort

2

Verwenden Sie die Google CSE module, wenn nicht ich es dringend empfehlen. Standardmäßig verwenden Drupal und Google CSE beide die q GET-Variable, die Probleme verursachen kann. Das Modul, mit dem ich oben verlinkt bin, kümmert sich darum.

0

Sie können das Google CSE-Modul als jhuebsch mentioned verwenden, aber das Problem liegt darin, dass Drupal von der Verwendung des q GET-Parameters zur Bestimmung der zu bedienenden Seite abhängig ist, während Google CSE die Suchanfrage ermittelt. Was also passiert, ist, dass die Suchabfrage an Drupal gesendet wird, die die gewünschte Seite offensichtlich nicht finden kann.

Also, wenn Sie selbst damit umgehen wollten, verwenden Sie Google CSE as_q parameter, die entwickelt wurde, um mit diesem Problem umzugehen. Das Google CSE-Modul enthält diese Problemumgehung.

0

Das Problem ist, dass Drupal den q= Parameter als Seitenname interpretiert. Ich benutze eine .htacces Umschreibung, um den Parameter auf der Suchseite aus PHP und damit aus Drupal auszublenden. Google CSE läuft clientseitige und sieht immer noch den Parameter:

RewriteRule ^search$ index.php?q=search [L] 

Stellen Sie die Suchseite Namen („search“) als notwendig und die Linie am Anfang der Datei einfügen. Das ist es. Kein Modul erforderlich.