Schicken Kindle
Ich habe es in letzter Zeit nerding SharePointwise auf, die geeky Dinge tun, die Geeks mögen wie ADFS und Ansprüche Authentifizierung zu tun. Also zwischen dem Versuch, mein Buch zu bekommen vollständig für die Veröffentlichung bereit bearbeitet, könnte ich den einen oder anderen technischen Sharepoint Post Squeeze-out. Heute hatte ich ein gebrochenes Sharepoint Menschen zum ersten Mal in eine Weile suchen, um zu beheben. Ich dachte, es war es wert Erläuterung des Crawl-Prozess ein wenig und sprechen über die wahrscheinlichsten Möglichkeiten, in denen für Sie brechen wird, um der Wahrscheinlichkeit, wie ich es sehe. Es gibt Artikel aus zu diesem Thema, aber keine, die ich fand, sind besonders umfassend. Hintergrund Sachen Wenn Sie sich einen legendären IT-Experten oder Sharepoint Gott betrachten, fühlen sich frei, dieses Bit zu überspringen. Wenn Sie einen kleinen Spaziergang durch Sharepoint-Suche Land bevorzugen, dann lesen Sie weiter ... Bei der Bereitstellung einer Suchdienstanwendung als Teil einer Sharepoint-Installation werden Sie gefragt, für (unter anderem), ein Fenster für den Suchdienst-Konto verwenden. Im Folgenden zeigt den Punkt in derGUI basierten Konfigurationsschritt, in dem dies geschehen ist. Als erstes wählen wir einen Suchdienst-Anwendung zu erstellen, und dann wählen wir das Konto für den "Suchdienstkonto" zu verwenden. Standardmäßig ist dies das Konto, das Crawlen von Inhaltsquellen tun wird. Nun ist die Suchdienstkonto wird als so beschrieben: ".. der Windows-Dienstkonto für den Sharepoint Server-Suchdienst. Diese Einstellung wirkt sich auf alle Suchdienstanwendungen in der Farm. Sie können dieses Konto auf der Seite Dienstkonten in der Zentraladministration unter Abschnitt Sicherheit ändern. "Diese Beim Lesen, deutet darauf hin, dass der Windows-Dienst (" Sharepoint Server Search 14 ") unter diesem Konto laufen würde. Die Realität ist, dass der Sharepoint Server Search 14-Dienstkonto ist das Farmkonto. Sie können die Pre sehen und unter Bereitstellung Status posten. First up, zeigen, dass ich unten auf dem Sharepoint installiert wurde und der Sharepoint Server Search 14-Dienst deaktiviert und mit Service-Anmeldeinformationen von "Local Service". Der nächste Satz vonBilder zeigen die Suchdienstanwendung bereitgestellt gemäß folgender Konfiguration: Suchdienstkonto: SEVENSIGMA \ such Search Admin-Web-Service-Konto: SEVENSIGMA \ searchadminws Suchabfrage und Website-Kontoeinstellungen: SEVENSIGMA \ searchqueryss Sie können unterhalb dieser in den Screenshots zu sehen. Sobald der Dienst erfolgreich bereitgestellt wurde, können wir klar die "Standard-Inhaltszugriffskonto" zu sehen ist, basiert auf dem "Suchdienstkonto", wie in der obigen Konfiguration (die erste der drei Konten) beschrieben. Schließlich ist, wie Sie unten sehen können, einmal bereitgestellt, ist es der Sharepoint-Farm-Konto, das die Suchfenster-Dienst ausgeführt wird. Sobald Sie die Suchdienstanwendung bereitgestellt haben, wird die Standard-Content-Zugriff (in meinem Fall SEVENSIGMA \ such), es gewährt "Lesen" Zugriff auf alle Web-Anwendungen über Web Application Benutzerrichtlinien, wie unten gezeigt. Auf diese Weise, egal wie drakonisch die Berechtigungen der Websitesammlungen sind, hat der Crawler Konto derZugang braucht es den Inhalt, sowie die Berechtigungen dieser Inhalte zu kriechen. Sie können dies überprüfen, indem Sie in der Zentraladministration auf einem beliebigen Web-Anwendung suchen (außer für die zentrale Verwaltung von Webanwendungen) und "User Policy" aus dem Band zu wählen. Sie werden in der Politik Bildschirm sehen, dass die "Search Crawler" Konto "Alles lesen" Zugriff hat. Falls Sie sich wundern, warum der Suchdienst benötigt die Berechtigungen von Inhalten sowie den Inhalt selbst zu kriechen, ist es, weil es diese Berechtigungen verwendet die Suchergebnisse für die Nutzer zu trimmen, die keinen Zugang zum Inhalt haben. Immerhin wollen Sie nicht auf sensible Unternehmensdaten über die Suche zu belichten Sie tun? Es ist ein weiterer subtiler Konfigurationsänderung durch den Suchdienst ausgeführt. Sobald die als die Benutzerprofildienst bekannt bereitgestellt wurde, wird der Suchdienstanwendung des Recherchedienstes gewähren Konto spezifische Berechtigung für die Benutzerprofildienst. Sharepoint ist intelligent genug, um dies zu tun, ob das Profil BenutzernameService-Anwendung wird vor oder nach der Suchdienstanwendung installiert. Mit anderen Worten, wenn Sie die Suchdienstanwendung zuerst, und die Benutzerprofildienst-Anwendung danach installieren, wird die Erlaubnis unabhängig gewährt werden. Die spezifische Genehmigung durch die Art und Weise, ist die Erlaubnis "für Search Crawlers Personen Daten abrufen", wie unten dargestellt: Kommen wir zurück auf den Titel dieses Beitrags, ist dies eine kritische Berechtigung, denn ohne sie wird der Search Server nicht in der Lage sein, zu sprechen die Benutzerprofildienst auf Benutzerprofilinformationen aufzuzählen. Der Effekt davon ist leer "People Ergebnissen suchen. Wie die Menschen zu suchen Arbeiten (ein wenig weiter fortgeschritten) Richtig! Jetzt, wo die coolen Kinder uns angeschlossen haben (der den ersten Abschnitt übersprungen), insbesondere einen genaueren Blick auf Sharepoint-Personensuche können nehmen . eintaucht In diesem Abschnitt wird ein wenig tiefer, aber keine Angst werde ich versuchen, die Dinge relativ einfach zu erfassen. Sobald die Suchdienstanwendung eine Standardinhaltsquelle bereitgestellt wurde, genannt- Ursprünglich genug - "Local Sharepoint-Sites" wird erstellt. Alle Web-Anwendungen, die es gibt (und alle, die von hier aus in erstellt werden), werden hier aufgeführt. Ein Beispiel für einen frisch gebackenen Sharepoint-Server mit einer einzigen Web-Anwendung, zeigt die folgende Konfiguration in Search Service-Anwendung: Nun hoffentlich Sinn macht. Offensichtlich ist dies die URL der Web-Anwendung auf diesem Server. Aber Sie könnten, dass SPS3 sich fragen: // Web ist? Ich wette, dass Sie noch nie eine Website mit SPS3 besucht: entweder // Website über einen Browser. Auch aus gutem Grund, denn es würde nicht funktionieren. Dies ist eine SharePointy Sache - oder genauer gesagt, was ein Search Server. Das lustige Protokollteil von dem, was wie eine URL aussieht, bezieht sich auf einen Verbinder. Ein Anschluss ermöglicht Search Server anderen Datenquellen zu kriechen, die nicht notwendigerweise HTTP verwenden. Wie einige native binäre Datenquelle. Die Leute können ihre eigenen Anschlüsse entwickeln, wenn sie so geneigt fühlen und ein klassisches Beispiel ist der Lotus Notes-Connector, dass Microsoft Versorgung mitSharepoint. Wenn Sie Sharepoint konfigurieren ihre Lotus Notes-Connector zu verwenden (und übrigens - es ist wirklich schwierig zu tun), würden Sie eine URL in der Form zu sehen: notes: // mylotusnotesbox sinnvoll? Der Protokollteil der URL ermöglicht es dem Such-Server, um herauszufinden, was Stecker, den Inhalt zu kriechen zu verwenden. (Für das, was ihren Wert, gibt es viele andere aus dem Kasten heraus. Wenn Sie alle Anschlüsse überprüfen Sie wollen sehen). Aber das, was wir in dieser Diskussion interessiert sind, ist SPS3: die Sharepoint-Benutzerprofile zugreift, die Menschen Suchfunktion unterstützt. Die Art und Weise diese besondere Anschluss funktioniert, ist, dass, wenn der Crawler diese SPS3 Anschluss zugreift, ist es in den Kurven ruft eine spezielle Web-Service auf dem Host angegeben. Der Web-Service wird spscrawl.asmx genannt und in meinem Beispiel-Konfiguration oben, wäre es die grundlegende Aufteilung der sein, was als nächstes passiert, ist dies: Informationen über die Website, die gecrawlt werden abgerufen (die GetSite Methode wird aufgerufen, von der Website vorbei die URL (dh die"Web" von SPS3: // web) Sobald die Website Details validiert werden der Dienst alle die für jedes Profil Nutzungsprofile aufzählt, wird die Methode GetItem genannt, dass alle Benutzerprofileigenschaften für einen bestimmten Benutzer abruft. Dies wird in den Index aufgenommen und als Content-Klasse von "urn: content-Klasse: SPSPeople" markiert (ich dies in einem Moment erhalten wird) Nun allerdings ist dies die einfache Version der Ereignisse. Wenn Sie wirklich Angst haben wollen (oder erhalten Sie heute Nacht schlafen) können Sie das aktuelle SP3 PDF lesen. Recht! Lassen Sie uns nun diese Diskussion mit diesem Begriff von content beenden. Die Sharepoint-Suche Crawler-Tags alle gekrochen Inhalt entsprechend seiner Klasse. Der Name dieser "Tag" - oder in der richtigen Terminologie "verwaltete Eigenschaft" - ist content. Standardmäßig hat Sharepoint ein Personensuchbereich. Es ist im Wesentlichen eine die Suche nur Rückkehr Inhalt als "People" content getaggt begrenzt. Jetzt machen es einfacher für Sie, alle Inhaltsklassen aufgeführt, die er von wieder in Sharepoint 2007 Tage kannte. Ich werde einige aufzählenhier, aber für die vollständige Liste zu besuchen. "STS_Web" - Site "STS_List_850" - Seite Library "STS_List_DocumentLibrary" - Document Library "STS_ListItem_DocumentLibrary" - Document Library Items "STS_ListItem_Tasks" - Aufgaben List Item "STS_ListItem_Contacts" - Kontaktliste Artikel "urn: content-Klasse: SPSPeople" - Menschen ( warum einige Eigenschaften folgen dem Format ich weiß nicht, * seufz * - Geeks huh) So das war einfach Paul?! Was kann schon schief gehen? So, jetzt wissen wir, dass, obwohl die Protokollhandler SPS3 ist, ist es immer noch letztlich HTTP als zugrunde liegende Mechanismus für die Kommunikation zu nutzen und einen Web-Service aufrufen, können wir alle zu denken, die Art und Weise beginnen, die es auf uns brechen kann. Lassen Sie uns nun einen Blick auf gemeinsame Problemfelder in der Reihenfolge der Gemeinsamkeit nehmen: 1. die Loopback-Ausgabe. Dies wurde an anderer Stelle in den Tod gemacht und die meisten Menschen wissen es. Was die Menschen nicht so gut kennen, dass die Loopback-fix eine extrem bekannt als ein Replay-Angriff zu verhindern war, die vor ein paar Jahren kam heraus. Im Wesentlichen, wenn Sie eine HTTP-Verbindung, um IhreServer, von diesem Server und mit einem Namen, der nicht den Namen des Servers übereinstimmt, dann wird die Anfrage mit einem 401-Fehler blockiert werden. In Bezug auf die Suche Sharepoint Menschen, die SPS3: // Handler wird erstellt, wenn Sie Ihre erste Web-Anwendung erstellen. Wenn das Web-Anwendung geschieht, ein Name sein, der den Servernamen nicht überein, dann ist die HTTP-Anforderung an den spscrawl.asmx Webservice wird aufgrund dieses Problems blockiert werden. Als Ergebnis wird die Suche Crawl nicht funktionieren und Sie werden einen Fehler in den Protokollen entlang der Linien von sehen: Zugriff verweigert wird: Überprüfen Sie, ob das Standardinhaltszugriffskonto hat Zugriff auf den Inhalt oder fügen Sie eine Durchforstungsregel zu kriechen, den Inhalt (0x80041205 ) Der Server ist nicht verfügbar und kann nicht zugegriffen werden konnte. Der Server wird wahrscheinlich vom Netzwerk getrennt. (0x80040d32) ***** konnte nicht die Server-Richtlinie abzurufen, hr = 80041205 - Datei: d: \ Office \ source \ Suche \ search \ sammeln \ Protokolle \ STS3 \ sts3util.cxx Line: 548 Es gibt zwei Möglichkeiten zu beheben Dies. Der schnelle Weg (DisableLoopbackCheck) und derrichtige Weg (Backconnectionhostnames). Beide beinhalten eine Änderung der Registrierung und einen Neustart, aber einer von ihnen lässt Sie viel offener für Ausbeutung. Spence Harbar schrieb über die vor einiger Zeit und ich empfehle Ihnen folgen seinem Rat. (Als leicht im Zusammenhang mit Nebenbemerkung, ich traf ein Problem mit dem Benutzerprofildienst eine Weile zurück, wo es einen Fehler gab: "Ausnahme beim WCF-Endpunkt verbindet: System.ServiceModel.Security.MessageSecurityException: Die HTTP-Anforderung mit Client verboten wurde Authentifizierungsschema 'Anonymous' -> System.Net.WebException. Der Remote-Server hat einen Fehler zurückgegeben: (403) verboten "In diesem Fall musste ich das Loopbacküberprüfung zu deaktivieren, aber ich war mit den Servernamen ohne Alternative Aliasnamen oder voll. qualifizierte Domain-Namen. ich fragte Spence über diese ein und es scheint, dass die DisableLoopBack Registrierungsschlüssel Adressen mehr als die SMB-Replay-Verwundbarkeit.) 2. SSL Wenn Sie ein Zertifikat auf Ihrer Website und die Website als HTTPS (unter Verwendung von SSL) markieren, Dinge ändern sich. In demBeispiel unten installiert ich ein Zertifikat auf der Website, entfernt http die Bindung (oder Port 80) und dann Sharepoint alternativen Zugriffszuordnungen aktualisiert, um die Dinge eine HTTPS-Welt zu machen. Beachten Sie, dass der Verweis auf SPS3: // WEB ist unverändert, und dass es auch eine Referenz ist immer noch zu, sowie eine automatisch hinzugefügt Verweis auf Also, wenn wir jetzt einen Crawl zu laufen waren, was denken Sie, wird passieren? Sicher wissen wir, dass fehlschlagen, aber was SPS3: // WEB? Lets laufen wir einen vollständigen Crawl und finden Sie heraus? Überprüfen Sie die Protokolle, haben wir die unsurprising Fehler ", den Punkt nicht gecrawlt werden konnten, weil der Crawler nicht auf das Repository in Verbindung treten konnten". So klar ist SPS3 nicht intelligent genug, um herauszufinden, dass die Web-Service-Aufruf Bedürfnisse spscrawl.asmx über SSL erfolgen. Glücklicherweise ist die Lösung ziemlich einfach. Es ist ein weiterer Anschluss, in der Funktion identisch zu SPS3 außer dass es ausgelegt ist, sichere Seiten zu behandeln. Es ist "SPS3s". Wir einfache Änderung der Konfiguration diesen Anschluss zu verwenden (und während wir dort sind,Entfernen Sie den Verweis auf) Nun versuchen wir einen vollständigen Crawl und auf Fehler prüfen ... Wohoo - alles gut! Es ist auch erwähnenswert, dass es eine andere SSL Problem im Zusammenhang mit Suche. Die Suche Crawler ist ein wenig pingelig mit Zertifikaten. Die meisten Menschen haben eine sichere Web-Sites besucht, die mit dem Zertifikat über ein Problem gewarnt wird, dass wie das Bild unten aussieht: Nun, wenn man darüber nachdenkt, eine Suche Crawler nicht den Luxus hat einen Benutzer zu fragen, ob das Zertifikat in Ordnung ist. Stattdessen irrt sie auf der Seite der Sicherheit und standardmäßig wird keine Seite kriechen, wenn das Zertifikat in irgendeiner Weise ungültig ist. Der Crawler ist auch pingelig als ein normaler Browser. Zum Beispiel ist es nicht übermäßig wie Wildcard-Zertifikate, auch wenn das Zertifikat vertrauenswürdig ist und gültig (obwohl alle modernen Browser tun). Um dieses Problem zu lindern, können Sie die folgenden Änderungen in den Einstellungen der Suchdienstanwendung machen: Farm Suche Verwaltung-> SSL-Warnungen ignorieren und kreuzen Sie "SSL-Zertifikat Name Warnungen ignorieren". DasFolge dieser Änderung ist, dass der Crawler akzeptieren wird nun alle alten Zertifikat, das Website-Kommunikation verschlüsselt. 3. Berechtigungen und Ändern Vermächtnis Nehmen wir an, dass wir einen Fehler in der Konfiguration gemacht, wenn wir die Suchdienstanwendung bereitgestellt. Das Suchdienstkonto (das ist der Standardinhaltszugriffskonto) ist falsch, und wir müssen es sonst zu etwas zu ändern. Schauen wir mal was passiert. In der Suchdienst-Anwendungsmanagement-Bildschirm, klicken Sie auf das Standardinhaltszugriffskonto Anmeldeinformationen zu ändern. In meinem Beispiel habe ich das Konto von SEVENSIGMA \ such zu SEVENSIGMA \ svcspsearch Nachdem diese Änderung vorgenommen, geändert haben können den Effekt in den Web Application Benutzerrichtlinien und Benutzerprofildienst-Anwendung Berechtigungen überprüfen. Beachten Sie, dass die Benutzerrichtlinie für die alte Suche Crawl Konto bleibt, aber das neue Konto hat einen Eintrag hatte automatisch erstellt. (Jetzt wissen Sie, warum Sie mit mehreren Konten mit dem Anzeigenamen "Search Krabbeln Account" am Ende) Jetzt könnenüberprüfen Sie die Profildienst-Anwendung Benutzer. Jetzt sind die Dinge anders! Der Suchdienstkonto unten bezieht sich auf das * alte * Konto SEVENSIGMA \ such. Aber die erforderliche Genehmigung der "Suche nach Crawlers Personen Daten abrufen" Erlaubnis wurde nicht gewährt! Wenn Sie durch die ULS-Protokolle traipsed, würden Sie sehen: Weggehen Wachte Scope (Request (GET :. Execution Time = 7,2370958438429 c2a3d1fa-9efd-406a-8e44-6c9613231974 Mssdmn.exe (0x23E4) 0x2B70 Sharepoint Server Search FilterDaemon e4ye Hoch FLTRDMN: Errorinfo ist "Httpstatuscode Unauthorized Die Anforderung mit HTTP-Status 401 fehlgeschlagen:. Unauthorized" [fltrsink.cxx: 553] d: \ office \ source \ search \ nativen \ MSSDmn \ fltrsink.cxx mssearch.exe (0x02E8) 0x3B30 Sharepoint Server Search Gatherer CD11 der Startadresse sps3s Warnung: // Web nicht gecrawlt werden können Kontext:. Application "Search_Service_Application ', Katalog' Portal_Content 'Details: Zugriff verweigert Stellen Sie sicher, dass entweder das Standardinhaltszugriffskonto Zugriff auf dieses Repository hat, oder.fügen Sie eine Durchforstungsregel dieses Repository zu kriechen. Wenn das Repository gecrawlt ein Sharepoint-Repository ist, stellen Sie sicher, dass das Konto, das Sie verwenden hat "Full Read" Berechtigungen für die Sharepoint-Webanwendung gecrawlt werden. (0x80041205), um dieses Problem zu beheben, gewähren manuell den Crawler Konto die "Retrieve Menschen Daten für die Suche Crawlers" Berechtigung in der Benutzerprofildienst. Zur Erinnerung wird dies über das Administratoren-Symbol in der Band "Anwendungen verwalten Service" getan. Sobald dies erledigt ist eine Füllung Crawl und überprüfen das Ergebnis in der logs.4 laufen. 4. Fehlende Stammwebsitesammlung Eine ungewöhnliche Frage, die ich einmal begegnet ist, wenn die Web-Anwendung gecrawlt wird eine Standard-Website-Sammlung fehlt. Mit anderen Worten, während es Websitesammlungen definiert mit einem verwalteten Pfad sind, wie zum Beispiel, gibt es keine Websitesammlung definiert, an. Der Crawler mag das gar nicht, und Sie erhalten zwei verschiedene Fehler, je nachdem, ob die SPS oder HTTP-Anschluss verwendet. SPS: // - Fehler in PortalCrawl WebService (0x80042617) http: // - Das Element konnte nicht auf dem Remote-Server zugegriffen werden, da seine Adresse eine ungültige Syntax (0x80041208) Die Lösung für dieses sollte ziemlich offensichtlich. Gehen Sie und eine Standard-Websitesammlung für die Web-Anwendung zu machen und einen Crawl erneut ausführen. 5. Alternative Zugriffszuordnungen und kontextuelle Scopes Sharepoint-Guru (und meine Squash Nemesis), Nick Hadlee über ein Problem, wo es keine Suchergebnisse zu kontextuellen Suchbereichen. Wenn Sie sich fragen, was sie sind Nick erklärt: Kontext-bezogene Bereiche sind eine wirklich nützliche Art und Weise Durchsuchungen durchführen, die zu einer bestimmten Website oder Liste beschränkt sind. Die "Diese Website: [Site Name]", "Diese Liste: [Listenname]" sind die Toten Giveaways für einen kontextuellen Rahmen. Was ist besser ist kontextuellen Bereiche Auto-magisch erstellt und verwaltet von Sharepoint für Sie sind so sollten Sie ziemlich viel sie nur meiner Meinung nach verwenden. Das Problem ist, dass, wenn die alternative Zugriffszuordnung (AAM) Einstellungen für die Standardzone auf einer Web-Anwendung nicht übereinstimmen Ihre SucheInhaltsquelle, die kontextuellen Bereiche zurückgeben keine Ergebnisse. Ich kam vor kurzem ein paar Mal über dieses Problem und die Lösung ist wirklich ziemlich einfach - überprüfen Sie Ihre alternative Zugriffszuordnung (AAM) Einstellungen und stellen Sie sicher, dass der Host-Header, die in Ihrer Standardzone angegeben wird, ist die gleiche URL, die Sie bei der Suche verwendet haben Inhaltsquelle. Normalerweise Sharepoint erstellt gefälligst den Eintrag in der Inhaltsquelle, wenn Sie eine Web-Anwendung erstellen, aber wenn Sie um irgendwelche AAM Einstellungen geändert haben und diese beiden Dinge nicht übereinstimmen dann deinen kontextuellen Ergebnisse leer. Fall abgeschlossen! Dank Nick 6. Active Directory-Richtlinien, Proxies und Stateful Inspection Eine besonders heimtückische Weise haben Probleme mit Search (und nicht nur Suche Personen) ist über Active Directory-Richtlinien. Für diejenigen von Ihnen, die nicht wissen, was AD Politik sind, lassen sie sich im Grunde Geeks auf einem Power-Trip mit Benutzer Desktop-Einstellungen zu gehen. Betrachten Sie das Bild unten. Im Wesentlichen kann ein Administrator eine massive Reihe von Einstellungen erzwingen füralle PCs im Netzwerk. So ist das Ausmaß dessen, was gesteuert werden kann, daß ich es nicht in einem einzigen Bildschirm passen. Was unten aufgeführt wird, ist nur ein kleiner Teil dessen, was ein anal retentive Nazi-Administrator zur Verfügung hat (mwahahaha!) Gemeinsame Nutzung von Richtlinien beinhalten bestimmte Desktop-Einstellungen einzuschränken Konsistenz zu erhalten, sowie Internet Explorer-Sicherheitseinstellungen, wie Proxy-Server erzwingen und Sicherheitseinstellungen wie die Liste vertrauenswürdiger Sites zu halten. Einer der häufigsten mit einer globalen Politik definiert Proxy-Server insbesondere angetroffen Probleme ist, dass die Suchdienstkonto wird sein Profil den Proxy-Server zu verwenden, geändert haben. Das Ergebnis davon ist, dass jetzt der Proxy befindet sich zwischen der Suche Crawler und der Content-Quelle, wie unten gezeigt werden gekrochen: Crawler -> Proxy-Server -> Inhaltsquelle Nun, obwohl der Crawler nicht den Internet Explorer nicht verwendet per se, Proxy Einstellungen sind nicht wirklich spezifisch für den Internet Explorer. Internet Explorer, wie die SucheCrawler verwendet wininet.dll. Wininet ist ein Modul, das Internet bezogene Funktionen von Windows-Anwendungen enthält und es ist diese Komponente, die Proxy-Einstellungen verwendet. Manchmal werden die Leute dieses Problem zu beheben, indem Telnet an den HTTP-Port anschließen. ", Das heißt:". Telnet web 80 "Aber Telnet nicht die wininet Komponente verwenden, so ist eigentlich kein gültiges Verfahren zum Testen von Telnet berichten glücklich, dass der Web-Server auf Port abhört 80 oder 443, aber es spielt keine Rolle, wenn die. Crawler versucht, über den Proxy diesen Port zugreifen zu können. Darüber hinaus, auch wenn der Crawler und die Inhaltsquelle auf dem gleichen Server sind, das Ergebnis ist das gleiche. Sobald die Crawler versucht zu indizieren eine Inhaltsquelle, wird die Anfrage weitergeleitet . der Proxy-Server auf den Verkäufer und Konfiguration des Proxy-Servers kann je nach verschiedene Dinge, einschließlich passieren: der Proxy-Server die NTLM-Authentifizierung nicht verarbeiten kann und übergibt einen 400 Fehlercode an den Crawler zurück der Proxy-Server hat flippige Stateful Inspectiondie mit den erlaubten HTTP-Verben in der Kommunikation stört und stört den Crawl Für das, was ihren Wert, ist es nicht nur die Proxy-Einstellungen, die mit den HTTP-Kommunikation zwischen dem Crawler und den durchforsteten stören können. Ich habe auch gesehen, Sicherheits-Software in die Quere kommen, die HTTP-Kommunikation und überwacht präventiv beendet Verbindungen oder verändert den Inhalt der HTTP-Anforderung. Der Effekt ist, dass die Ergebnisse auf dem Crawler zurückgeleitet sind nicht das, was sie erwartet, und der Crawler berichtet natürlich, dass es nicht auf die Datenquelle mit entsprechend seltsame Fehlermeldungen zugreifen. Nun ist die Sache sehr, dass dieses Szenario schwer zu beheben macht, ist die verräterische Zeichen dafür. Das heißt: es wird nichts in den ULS-Protokollen protokolliert werden, nicht die IIS-Protokolle für den Suchdienst. Dies liegt daran, die Fehler in den Proxy-Server oder der überenthusiastisch Stateful-Sicherheits-Software protokolliert. Wenn Sie vermuten, dass das Problem ein Proxy-Server-Problem ist, aber keinen Zugriff auf den Proxy-ServerProtokolle überprüfen, ist der beste Weg, um dieses Problem zu beheben vorübergehend die Suche Crawler Konto genügend Zugang zu gewähren, in den Server interaktiv anzumelden. Öffnen Sie Internet Explorer und manuell überprüfen Sie die Proxy-Einstellungen. Wenn Sie eine Richtlinie basierten Proxy-Einstellung zu bestätigen, können Sie möglicherweise vorübergehend zu deaktivieren und einen Crawl wiederholen (bis zur nächsten AD Richtlinienaktualisierung die Einstellungen wieder anwendet). Der ideale Weg, um dieses Problem zu heilen ist Ihre freundliche Active Directory-Administrator bitten, entweder den Proxy ganz aus dem Sharepoint-Server (Uhr für die als Ergebnis) Entfernen Konfigurieren eines Ausschlusses in den Proxy-Einstellungen für die AD-Politik, dass die Inhaltsquellen für nicht über einen Proxy erstellen Sie eine neue AD Politik speziell für die Sharepoint-Box kriechen, so dass die Standardeinstellungen für den Rest der Mitgliedscomputer Domäne gelten. Wenn Sie das Problem vermuten, dass allzu eifrige Stateful Inspection, deaktivieren Sie vorübergehend alle Sicherheitstyp-Software auf dem Server und versuchen Sie es erneut einen Crawl. Wenn Sie nur daran erinnern, dasshaben keine Protokolle auf dem Server gecrawlt werden, stehen die Chancen sind seine nicht gecrawlt werden und Sie an anderer Stelle zu suchen. 7. Pre-Windows 2000 kompatibler Zugriff Gruppe in einer von mir, schlug ich ein Problem, wo der Suche keine Ergebnisse für einen normalen Benutzer ergeben würde, aber ein Domain-Administrator könnte glücklich SP2010 suchen und Ergebnisse zu erzielen. Ein weiteres Symptom mit diesem Problem verbunden ist bestimmte wiederkehrende Fehler Ereignisprotokoll - Ereignis-ID 28005 und 4625 ID 28005 zeigt die Meldung "Eine Ausnahme ist aufgetreten, während eine Nachricht in der Zielwarteschlange enqueueing. Fehler: 15404, Status: 19. keine Informationen über Windows NT-Gruppe erhalten konnte / user 'DOMAIN \ EinUser', Fehlercode 0 × 5 ". Der 4625 Fehler würde sich beschweren "Ein Konto konnte sich nicht anmelden. Unbekannter Benutzername oder falsches Kennwort Status 0xc000006d, sub-Status 0xc0000064 "oder auch" Ein Fehler bei der Anmeldung aufgetreten, Status: 0xC000005E, Sub Status: 0x0 Query "Wenn Sie die Debug-Protokolle innerhalb Sharepoint-Zentraladministration für dreht" "und" Query Prozessor "Funktionen von" SharepointServer Search "Sie erhalten eine Fehlermeldung" AuthzInitializeContextFromSid fehlgeschlagen mit ERROR_ACCESS_DENIED. Dieser Fehler zeigt an, dass das Konto, unter dem dieser Prozess kann ausgeführt wird keinen Zugriff auf das Attribut tokenGroupsGlobalAndUniversal auf der anfragende Benutzer-Objekt Active Directory gelesen haben. Die Ergebnisse der Abfrage, die nicht-Claims Windows-Autorisierung erfordern, nicht auf diese anfragende Benutzer zurückgegeben werden. Das Update ist Ihre Suchdienstkonto zu einer Gruppe namens "Pre-Windows 2000 kompatibler Zugriff" Gruppe hinzuzufügen. Das Problem ist, dass Sharepoint 2010 wieder eingeführt etwas, das in SP2003 war - ein API-Aufruf zu einer Funktion aufgerufen. Offenbar war es nicht in SP2007, aber den Rücken für SP2010 verwendet. Diese besondere Funktion erfordert eine gewisse Berechtigung in Active Directory und der "Pre-Windows 2000 kompatibler Zugriff" Gruppe geschieht erforderlich, um das Recht zu haben, die "tokenGroupsGlobalAndUniversal" Active Directory-Attribut zu lesen, die oben in dem Debug-Fehler beschrieben wird. 8. Blutige Entwickler! Endlich,Patrick Lamber Blogs über. In seinem Fall entwickelte jemand eine benutzerdefinierte Web-Teil, der eine Ausnahme ausgelöst hatte, als die Website gecrawlt wurde. Aus irgendeinem Grund haben diese Ausnahme nicht ausgelöst werden, wenn die Website normalerweise über einen Browser angezeigt wurde. Als Ergebnis konnte keine Seiten oder Inhalte auf der Website gecrawlt werden, weil alle Crawler sehen würde, egal, was es wäre geklickt die gefürchtete "ist ein unerwarteter Fehler ist aufgetreten". Wenn man darüber nachdenkt, dass jede benutzerdefinierte Code Aktion nimmt basierend auf Browser-Einstellungen wie Sprache oder Sprache könnte eine Ausnahme wie diese führen - und damit der Crawler einige Trauer verursachen. In Patricks Fall gab es eine ebenso zweite Ausgabe. Sein Team hatte einen benutzerdefinierten Httpmodule entwickelt, die einige URL-Rewriting tat. Wie Patrick heißt es: "Der Indexer schien unsere Umleitungen mit dem Response.Redirect Befehl zu hassen. Ich habe einfach die automatische Umleitung auf dem Indizierungsserver. Danach funktionierte alles "in Ordnung. In diesem Fall wurde mit Patrick eine Multi-Server-Farm mit einemdedizierten Indexserver, mit denen er das HTTP-Modul für diesen einen Server zu entfernen. in kleineren Installationen können Sie diesen Luxus nicht haben. Also abgesehen von den offensichtlichen Gelegenheit Tasche Programmierer :-), dieses Beispiel zeigt schön, dass es für eine dritte Partei Anwendung oder Code einfach suchen zu brechen. Wichtig ist für die Entwickler zu erkennen ist, dass Client-Web-Browser nicht das einzige, was sind die Sharepoint-Seiten lädt. Wenn Sie nicht wissen, identifiziert der User-Agent-User-Agent-String, der den Typ des Clients Zugriff auf eine Ressource. Dies ist das Mittel, mit denen Websites herauszufinden, welchen Browser Sie verwenden. Ein kurzer Blick auf den User-Agent-Parameter von Sharepoint Server 2010-Suche zeigt, dass es sich selbst als "Mozilla / 4.0 (compatible; MSIE 4.01; Windows NT; MS Search 6.0 Robot)" identifiziert. Zumindest, testen Sie alle benutzerdefinierten Code für die Benutzeroberfläche wie Web-Teile gegen diese Zeichenfolge, sowie überprüfen Sie die Crawl-Protokolle, wenn es Indizes alle benutzerdefinierten entwickelte Material. Fazit Nun, das ist so ziemlich meine Listegotchas. Kein Zweifel, es gibt noch viel mehr, aber hoffentlich etwas detailliertere Erforschung von ihnen könnten einige Menschen helfen. Vielen Dank für Paul Culmsee lesen
No Tags
Schicken Kindle