2010-12-20 6 views
0

Ich habe Probleme beim Einbetten von ajax html in die html-Seite selbst, ich muss diese Ajax-Antwort in der Seitenquelle sichtbar machen.Ajax ändern, um ein div mit HTML-Inhalt zu füllen, um in die html-Seite selbst eingebettet zu werden

Ich habe 2 Server, einer, der die Webanwendung ausführt und der andere ist verantwortlich für die Durchführung von Suchanfragen (Sucher). Jetzt sendet der Anwendungsserver die HTML-Seite an den Browser des Clients, der einige Suchanfragen an den Sucher durch Ajax anfordert, nach der erfolgreichen Antwort legt der Browser das HTML-Ergebnis in die Seite.

Das Problem ist, dass Suchergebnisse nicht in der HTML-Quelle existieren, die nicht gut für SEO ist, Google Crawler werden keine Ahnung haben, wonach gesucht wird.

Das andere Problem ist, wenn ich den Anwendungsserver eine Anfrage machen und warten auf Suchergebnisse, die Seite dauert Tonnen von Sekunden zu laden.

Ich bin mir nicht sicher, was ich tun soll .. Ich muss wirklich die Website SEO freundlich machen und auch die Seite schnell laden müssen !!

Alle Hinweise oder Ideen werden geschätzt.

Vielen Dank, Wa'el

+1

Ich bin nicht sicher, was wäre die beste Lösung hier, aber nicht in Betracht ziehen, unterschiedliche Ergebnisse für die beiden Fälle - d. H. Anwendungsserver anfordern und warten auf Ergebnisse in Crawler Fall und Ajax Fall normalerweise. Überprüfen Sie diese http://stackoverflow.com/questions/916147/how-to-identify-web-crawlers-of-google-yahoo-msn-by-php/916222#916222 –

+0

@Sandeepan, danke für Ihre Antwort, anders zu dienen Die Ergebnisse führen dazu, dass die Ausführung der Seite im Anwendungsserver lange dauert. Der Link könnte eine Lösung sein, tun viele Websites es? – wael34218

Antwort

1

Es ist unmöglich, Ajax zur Verfügung gestellten Daten zu erhalten, die in der „Quelle“ zu sein, in diesem Fall als die Quelle von dem Server vor jeder Client-Seite angefordert immer die ursprüngliche Seite ist Änderungen.

Und jede Art von Client, der Javascipt nicht unterstützt, wie Suchmaschinen-Crawler, wird niemals irgendwelche Ajax-geladenen Daten sehen.

Wenn Sie die Informationen benötigen Wende werden Sie
1 müssen: dienen die Seite als in vom Server, ohne Client-Seite Laden
2: Nicht veröffentlicht Formulare fo die Daten zu erreichen, Suchmaschinen Folow nicht Beiträge erhalten nur Links.

+0

Die Ajax-Antwort ist die verwandten Elemente für den Beitrag, der angezeigt wird, natürlich hat jeder Artikel andere verwandte Elemente. Mit begrenzten Ressourcen muss ich die verwandten Elemente schnell vom Anwendungsserver bekommen ... Es werden keine Datenbankabfragen sein .. sollte ich Caching verwenden (zB memcached, redis) ?? Ich bin mir nicht sicher, ob es irgendeinen Nutzen bringen wird ... Wie große Websites wie youtube das machen ?! – wael34218

+0

Verwenden Sie in diesem Fall Standardverknüpfungen, die mit den neuen Informationen verknüpft sind, die jedoch beim Laden von Info-Ajaxaufrufen umgewandelt werden, wenn der Client JavaScript unterstützt. Und haben die Landingpage, dass die ursprünglichen Links die gleiche Seite wie die Liste sind, aber mit Argumenten, damit es das referenzierte Element direkt beim Laden lädt. –

Verwandte Themen