
Проблема:
- Если я захожу в SharePoint из Windows 7 с IE8 или Chrome5 - мне нужно подождать околоминутачтобы получить ответ. Если я использую другой Windows 7 с IE8, то же самое - просто подождитеМИНУТА.
- Если я использую Firefox3.6 на машине W7 - страница открывается немедленно.
- Теперь переключитесь наДвижок рендеринга IE в Firefox, вам придется подождать, как и в случае с IE.
- Сейчас попробовал IE8 на XP SP3 - страница открываетсянемедленно.
- Я попробовал IE8 на Windows Server 2003 SP2 (машина, на которой размещен SharePoint) — страница открывается немедленно.
Журналы IIS6
Я сделал запрос почти мгновенно из всех трех браузеров, и вот что отображается в журналах IIS (первые 2 записи для каждого браузера):
Хром
Хорошо, IIS увидел первый запрос Chrome, когда я нажал Enter в браузере, но мне пришлось долго ждать, пока все сдвинется с места.
2010-06-01 05:46:04W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US)+AppleWebKit/533.4+(KHTML,+like+Gecko)+Хром/5.0.375.55+Сафари/533.4 401 2 2148074254
Загрузка...
2010-06-01 05:47:07W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US)+AppleWebKit/533.4+(KHTML,+like+Gecko)+Хром/5.0.375.55+Safari/533.4 401 1 0
... и т. д...
Fire Fox
Все мгновенно
2010-06-01 05:46:06W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+lv;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 401 2 2148074254
2010-06-01 05:46:06W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+lv;+rv:1.9.2.3)+Gecko/20100401+Firefox/3.6.3 401 1 0
... и т. д...
IE
Я нажал Enter, когда было 05:46:06, но это первые записи в журналах IIS
2010-06-01 05:47:08W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/4.0+(совместимый;+MSIE+7.0;+Windows+NT+6.1;+Trident/4.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+ПК+6.0;+Tablet+ПК+2.0;+.NET+CLR+1.1.4322;+.NET4.0C;+.NET4.0E) 401 1 0
2010-06-01 05:47:08W3SVC1794621940 192.168.0.9 GET /sapulces - 80 - 192.168.0.186 Mozilla/4.0+(совместимый;+MSIE+7.0;+Windows+NT+6.1;+Trident/4.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+ПК+6.0;+Tablet+ПК+2.0;+.NET+CLR+1.1.4322;+.NET4.0C;+.NET4.0E) 401 1 0
... и т. д...
В журналах событий ничего нет.
Скрипач
IE
GET /dokumenti HTTP/1.1
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: lv-LV
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: serveris
HTTP/1.1 401 Unauthorized
Content-Length: 1656
Content-Type: text/html
Server: Microsoft-IIS/6.0
WWW-Authenticate: Negotiate
WWW-Authenticate: NTLM
MicrosoftSharePointTeamServices: 12.0.0.6520
X-Powered-By: ASP.NET
Date: Mon, 07 Jun 2010 08:40:46 GMT
Proxy-Support: Session-Based-Authentication
------------------------------------------------------------------
GET /dokumenti HTTP/1.1
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: lv-LV
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: serveris
Authorization: Negotiate TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbAdAAAADw==
HTTP/1.1 401 Unauthorized
Content-Length: 1539
Content-Type: text/html
Server: Microsoft-IIS/6.0
WWW-Authenticate: Negotiate TlRMTVNTUAACAAAAEgASADgAAAAVgonihccyI36f5i4AAAAAAAAAAIIAggBKAAAABQLODgAAAA9CAEEATABUAEkAQwBPAFYATwACABIAQgBBAEwAVABJAEMATwBWAE8AAQAQAFMARQBSAFYARQBSAEkAUwAEABIAQgBhAGwAdABpAGMAbwB2AG8AAwAkAHMAZQByAHYAZQByAGkAcwAuAEIAYQBsAHQAaQBjAG8AdgBvAAUAEgBCAGEAbAB0AGkAYwBvAHYAbwAAAAAA
MicrosoftSharePointTeamServices: 12.0.0.6520
X-Powered-By: ASP.NET
Date: Mon, 07 Jun 2010 08:41:49 GMT
Proxy-Support: Session-Based-Authentication
------------------------------------------------------------------
GET /dokumenti HTTP/1.1
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: lv-LV
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Authorization: Negotiate TlRMTVNTUAADAAAAGAAYAJgAAAAYABgAsAAAABIAEgBYAAAAHgAeAGoAAAAQABAAiAAAABAAEADIAAAAFYKI4gYBsB0AAAAPirSYl+w3M1gPelXA+mS9OEIAQQBMAFQASQBDAE8AVgBPAGoAYQBuAGkAcwAuAHYAZQBpAG4AYgBlAHIAZwBzAEoAQQBOAEkAUwAtAFAAQwCxt4kZryxtOgAAAAAAAAAAAAAAAAAAAAC7gY8LTv2TqmFbggCo52sIVw8zy2V/s0ZHHFSqA0tiiGpcNplfJlok
Host: serveris
HTTP/1.1 302 Object Moved
Content-Length: 161
Content-Type: text/html
Location: http://serveris/dokumenti/default.aspx
Server: Microsoft-IIS/6.0
MicrosoftSharePointTeamServices: 12.0.0.6520
X-Powered-By: ASP.NET
Date: Mon, 07 Jun 2010 08:41:49 GMT
------------------------------------------------------------------
GET /dokumenti/default.aspx HTTP/1.1
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: lv-LV
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
If-Modified-Since: Mon, 07 Jun 2010 06:45:23 GMT
Host: serveris
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Length: 114839
Content-Type: text/html; charset=utf-8
Expires: Sun, 23 May 2010 08:41:49 GMT
Last-Modified: Mon, 07 Jun 2010 08:41:49 GMT
Server: Microsoft-IIS/6.0
MicrosoftSharePointTeamServices: 12.0.0.6520
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Set-Cookie: WSS_KeepSessionAuthenticated=80; path=/
Set-Cookie: MSOWebPartPage_AnonymousAccessCookie=80; expires=Mon, 07-Jun-2010 09:11:49 GMT; path=/
Set-Cookie: ASP.NET_SessionId=d2r5lj32dm4svg554sixwc2t; path=/; HttpOnly
Date: Mon, 07 Jun 2010 08:41:51 GMT
------------------------------------------------------------------
Хром
Но при попытке использовать Google Chrome, Fiddler зависает, если я не закрываю Chrome вскоре после отправки запроса. Все, что я вижу в Fiddler, — это поток (тысячи) ответов 401 (несанкционированных).
Вопрос
Похожий вопросбыл задан вопрос, но ответа нет, и я пытаюсь получить доступ к странице без SSL, и это происходит даже при запросах GET.
Куда смотреть? Где может быть проблема? Браузер? ОС? Даже не знаю, что и думать.
Просто заметка
Просто замечание об изоляции процессов Chrome: мне было грустно, что пока я ждал эту минуту с Chrome, я не мог использовать никакую другую вкладку (я мог переключаться, но не мог, например, прокручивать или использовать какие-либо элементы управления).
решение1
Как оказалось, это было как-то связано с аутентификацией.
Я проверил, какой у меня провайдер аутентификации, и я (вероятно, случайно) установил его на Kerberos. Я изменил его обратно на NTLM (то, что я подозревал), и теперь это работает.
решение2
Выстрел в темноте, но мне интересно, правильно ли IIS устанавливает заголовок Content-Length. Единственный способ, которым браузер действительно знает, что он получил все данные, — это посмотреть на заголовок Content-Length и прочитать столько байтов, или он может прочитать данные и затем ожидать больше. И это время в одну минуту звучит как тайм-аут.
Может быть, заголовок Content-Length не учитывает сжатие и неверен???
Попробуйте запустить Fiddler в IE и посмотрите, что он покажет.