ajax.googleapis.com останавливает мой Firefox

13

Сегодня по какой-то странной причине Firefox перестает работать должным образом, потому что он пытается извлечь что-то из ajax.googleapis.com.

Что я могу сделать, чтобы избежать этого? Safari и Chrome работают просто отлично.

Я попытался удалить Firebug и очистить кеш.

Единственное, что сработало, это отключение JavaScript в целом.

Это, кажется, виновная ссылка:

http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js

Что я могу сделать?

РЕДАКТИРОВАТЬ

Я думаю, что я нашел, где проблема. Мой прокси-сервер обслуживает файл по одному байту за раз, поэтому Firefox использует его в этот момент.

Чего я не понимаю, так это почему Safari и Chrome принимают это сразу.

Прошлой ночью я оставил ФФ открытым на всю ночь, чтобы дать ему возможность загрузить файл, я надеялся, что меня кэшируют, и в следующий раз не было нужды это делать.

Сегодня утром страница загрузилась успешно, но страница не была кэширована, потому что следующий запрос не удался.

Вот видео, показывающее проблему:

альтернативный текст

OscarRyz
источник
2
Какова конкретная проблема у вас? Firefox полностью зависает, останавливает ли он рендеринг страницы, или он просто застрял с «Waiting for ajax.googleapis.com ...» в строке состояния?
Захарилиу
попробуйте запустить firefox в безопасном режиме без каких-либо плагинов и протестируйте то же самое
ukanth
@ thezachperson31: позже.
ОскарРиз
Я предполагаю, что Chrome и Safari все еще кэшируют его из более раннего соединения? Что делает прокси для других библиотек, обслуживаемых Google, таких как полная версия на ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js или как инструменты пользовательского интерфейса на ajax.googleapis.com/ajax/ libs / jqueryui / 1.7.2 / jquery-ui.js
Арджан,
Тот xx.mxmcпрокси, который вы используете, нужен для вашего офиса или для вашего интернет-провайдера, верно? (И только для того, чтобы подтвердить, что вы curl --proxy name:port urlхорошо работаете для меня, с прокси моего провайдера.)
Арджан,

Ответы:

4

Расширение Firefox Decentraleyes , созданное в 2015 году, заменяет ресурсы CDN локальными. Сам никогда не пробовал, но по отзывам выглядит многообещающе.

吴 烜 _ 中文 编程
источник
3

Есть некоторые серьезные проблемы с производительностью Firefox с некоторыми из API Google, доступных на ajax.googleapis.com. Один из многих примеров - медленные или отсутствующие символы при наборе в собственной строке поиска Google.

Я использовал Adblock Plus, чтобы заблокировать доступ ко всем API Ajax из Google'a " http://ajax.googleapis.com/ *. Это исправило многие проблемы с производительностью веб-браузера Firefox. Недостатком является то, что некоторым новым веб-сайтам может потребоваться Ajax API должны появиться или функционировать должным образом.

AbsoluteJoe
источник
2
Это не лучшая идея. Если вы заблокировали эти файлы, вы не получите эти файлы, и веб-сайты будут работать не так, как ожидалось. Блокировка файлов jQuery сродни тому, чтобы не заправлять автомобиль топливом.
Ник ДеВор
Superuser.com - это один из веб-сайтов, который не будет работать без загрузки jquery с Google, выдающего сообщение об ошибке: «Суперпользователю требуется внешний JavaScript из другого домена, который заблокирован или не удалось загрузить». что делает его серьезным PITA для использования из местоположения, которое брандмауэры googleapis.com и других ненадежных доменов.
Андерверс
3

Если вам это не нужно, черная дыра в файле хостов, добавив

0.0.0.0 ajax.googleapis.com

Вы могли бы также взглянуть на учебник и список заблокированных, чтобы держать вас в безопасности.

Рекомендуется блокировать подключения к вашему компьютеру из этих доменов, а не пытаться заблокировать сценарий уже установленного подключения.

Simples
источник
1

Является ли Firebug единственным расширением, которое вы загрузили? Что насчет NoScript или Adblock? Попробуйте запустить Firefox в « безопасном режиме » и получить доступ к URL-адресу Google, который вы пробовали ранее.

jtimberman
источник
Да, это единственный.
OscarRyz
1

ajax.googleapis.comURL относится к внешней библиотеке JavaScript, который содержит функцию веб - страница может быть с использованием в некоторых инлайна JavaScript своего собственном.

В большинстве (если не во всех) браузерах ничто на странице не отображается до тех пор, пока все встроенные сценарии не будут выполнены * . Даже когда встроенному JavaScript ничего не нужно из этих внешних библиотек JavaScript, вашему браузеру необходимо сначала загрузить все определенные внешние библиотеки, на случай, если они понадобятся. Итак, если внешний скрипт не находится в кэше вашего браузера (или: всякий раз, когда вы явно обновляете свой браузер ), то все останавливается, пока скрипт не будет загружен.

ajax.googleapis.comURL загружает штраф на моем подключении к Интернету и я полагаю , Safari и Chrome до сих пор библиотеки в своих тайниках? Что касается очень медленного прокси: это может быть какой-нибудь вирусный сканер (не слишком вероятно на вашем Mac) или какой-нибудь брандмауэр? Если проблема в прокси-сервере, то это вне вашего контроля, поэтому (если вы используете этот прокси-сервер): обратитесь к администраторам? Между тем, вы можете повторить свой тест для других библиотек, размещенных в Google, таких как jQuery 1.3.2 или jQuery UI 1.7.2 .

(Если на самом деле ничего не помогает, вы можете попытаться найти способ переписать запрос на ajax.googleapis.com/[..]/1.3.2/jquery.min.jsURL другого хоста ...)


* См. (Медленный) пример на Cuzillion . И хотя IE8 является первым браузером, который загружает сценарии параллельно , он все равно не будет выполнять их параллельно.

Google просит ваш браузер кэшировать его на 31 536 000 секунд, то есть 365 дней. Кроме того, он допускает публичное кеширование, поэтому прокси-серверу разрешено его кешировать и использовать для других клиентов.

При нажатии кнопки «Обновить» для кэшированных элементов большинство браузеров добавляют If-Modified-Sinceзаголовок к запросу, таким образом, загружая его только в том случае, если содержимое в кэше устарело. Но: даже если сервер отвечает HTTP/1.x 304 Not Modified, браузер все еще должен ждать этого ответа. Итак, нажатие кнопки «Обновить» при медленной работе может ухудшить ситуацию!

Арьян
источник
1

Я случайно столкнулся с этим раньше с Firefox. Если вы получили Firebug , вы можете перейти на вкладку «Сеть», щелкнуть правой кнопкой мыши скрипт, который все еще загружается, и выбрать «Остановить загрузку». Это обойдет проблему.

reflexiv
источник
0

Не могли бы вы ввести "ссылку преступника" (которую использует каждый второй сайт Web 2.0) в адресную строку Fx и загрузить ее вручную?

Попробуйте другие сайты, которые ссылаются на эту библиотеку JQuery. Просто Google URL, вы найдете достаточно примеров.

Вы пробовали это с новым, чистым профилем? Аддоны иногда работают против друг друга ( проблема NoScript против ABP ...)

guerda
источник
Fx это Firefox? Да, я сделал это, и у меня тот же результат (ну, результат, который я получил, файл остается в «загрузке» в течение длительного времени)
OscarRyz
Fx выключен. сокращенный е. Fire Fox. Это действительно, действительно звучит странно. Вы пробовали чистый профиль?
Guerda