Я использую мобильную широкополосную USB-флешку, и она вставляет скрипт в мои страницы.Как я могу это остановить? - PullRequest
5 голосов
/ 27 сентября 2010

Я недавно начал использовать мобильный широкополосный USB-накопитель 3G. Это от T-Mobile, британской компании мобильной связи. Казалось, все хорошо, пока я не попытался протестировать сайт, на котором я работаю локально, загрузив его на свой действующий сервер.

Когда я смотрю на код моего живого сайта, я вижу, что происходят 2 странные вещи:

  1. В мои документы специально вставляется скрипт: <script src="http://1.2.3.8/bmi-int-js/bmi.js" language="javascript"></script>

    Что-то, что я могу вставить в свой код, чтобы предотвратить вставку скрипта?

  2. Обычно мой CSS включен в мою страницу, как:

    <link href="style.css" rel="stylesheet" type="text/css" />

однако теперь, когда я смотрю в свой источник, CSS вставлен прямо в страницу между тегами сценария, такими как:

<style type="text/css" style="display:none">div.calendar{color:#000;font-family:Verdana,Geneva,Arial,Helvetica,sans-serif;-moz-box-shadow:0px.....

Это происходит и с некоторыми файлами javascript.

Что происходит?

Ответы [ 4 ]

11 голосов
/ 27 сентября 2010

Изменений, которые вы видите, на самом деле нет в разметке вашего сайта. Я посетил ваш сайт и могу это проверить. Происходит то, что T-Mobile пытается «оптимизировать» любой сайт, который вы посещали, используя вашу беспроводную флешку, и делает это плохо. Этот парень сообщает о той же проблеме:

Оказывается, что T-Mobile (и Vodafone UK) считают целесообразным вставлять свой собственный Javascript в каждую страницу, которую я посещаю, по которой все изображения передаются через прокси для снижения их качества. Однако из-за неправильно завершенной новой строки этот сценарий не может быть проанализирован Firefox или Opera в сочетании с какими-либо документами XHTML 1.1 или XML.

Вот первые несколько строк вашего head, как я его вижу:

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>The Smile Zone | Home</title> 
<link rel="stylesheet" type="text/css" href="manager/templates/smiletemplate/css/style.css" /> 
<link type="text/css" rel="stylesheet" href="http://www.jotform.com/css/styles/form.css?v3"/> 
<link href="manager/templates/smiletemplate/css/calendarview.css" rel="stylesheet" type="text/css" /> 

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

4 голосов
/ 13 октября 2011

В T-mobile он называется «Мобильный широкополосный ускоритель». Вы можете посетить: http://accelerator.t -mobile.co.uk или http://1.2.3.50/, чтобы отключить / настроить его. Также обратите внимание на Остановите прокси-сервер мобильной сети от введения JavaScript

1 голос
/ 27 сентября 2010

Если вы загружаете веб-сайт с использованием SSL или просматриваете с использованием VPN (или Tor), ваш провайдер не сможет просматривать данные для его изменения. Это не обязательно поможет вашим пользователям.

0 голосов
/ 04 сентября 2014

Есть ли что-то, что я могу добавить в свой код, чтобы предотвратить вставку скрипта?

Если вы установите заголовок HTTP Content-Security-Policy для своего веб-сайта,Вы сможете предотвратить загрузку введенного скрипта в современных браузерах.

См. " html5rocks: Введение в политику безопасности содержимого ", чтобы начать работу.Однако при такой политике вы должны быть осторожны, чтобы не отрицать ресурсы, которые требуются вашему собственному веб-сайту, например, шрифты Google, CDN и т. Д. И которые могут занять много времени, чтобы получить право.

Пример,следующий HTTP-заголовок позволит только современным браузерам извлекать ресурсы из собственного домена вашего веб-сайта, предотвращая выборку внешнего сценария BMI:

Content-Security-Policy: default-src 'self';
...