Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Откуда в объявлении скрипта берутся символы ?x
 
 автор: eastman75   (25.05.2012 в 13:19)   письмо автору
 
 

Я однажды посмотрел исходный код главной страницы одного из сайтов и увидел, что в объявлениях для скриптов после имени скрипта стоят символы ?x. Например, вот так:

<script type="text/javascript" src="js/jquery.js?x"></script>
<script type="text/javascript" src="js/drupal.js?x"></script>

Объясните, пожалуйста, в чем здесь дело.
1) Откуда они повляются?
2) Нужны ли они на моей статической странице?

  Ответить  
 
 автор: confirm   (25.05.2012 в 13:48)   письмо автору
 
   для: eastman75   (25.05.2012 в 13:19)
 

Они не появляются, а добавляются как параметр GET-запроса к серверу. Например, скрипт может содержать некоторые изменяемые во времени данные, или просто обновления. А так как скрипт может кешироваться браузером, то данные/обновления могут быть "не замечены" пользователем. Чтобы избежать этого можно указывать в качестве GET-параметра временную метку, и если она будет иной, то браузер загрузит новый скрипт, а не возьмет из кеша.
Нужно ли вам это или нет, это уж вам решать.

  Ответить  
 
 автор: eastman75   (25.05.2012 в 14:17)   письмо автору
 
   для: confirm   (25.05.2012 в 13:48)
 

>Они не появляются, а добавляются как параметр GET-запроса к серверу. Например, скрипт может содержать некоторые изменяемые во времени данные, или просто обновления. А так как скрипт может кешироваться браузером, то данные/обновления могут быть "не замечены" пользователем. Чтобы избежать этого можно указывать в качестве GET-параметра временную метку, и если она будет иной, то браузер загрузит новый скрипт, а не возьмет из кеша.

Спасибо, понял. Мне нужно будет только еще почитать про добавление параметра GET-запроса к серверу. В смысле, где это делается... А нужно это или нет, зависит, конечно, от автора. Если он считает, что сайт сырой или возможны обновления скриптов, то тогда конечно...

  Ответить  
 
 автор: confirm   (25.05.2012 в 14:22)   письмо автору
 
   для: eastman75   (25.05.2012 в 14:17)
 

Сервер отдает страницу пользователю, то есть вы, а значит вы в своих скриптах и добавляете GET-параметры. Сами они туда не добавятся.
Обновление не означает "сырость".

  Ответить  
 
 автор: eastman75   (04.06.2012 в 10:13)   письмо автору
 
   для: confirm   (25.05.2012 в 14:22)
 

>Сервер отдает страницу пользователю, то есть вы, а значит вы в своих скриптах и добавляете GET-параметры. Сами они туда не добавятся.
Спасибо, это я понял. Только вот не понял, почему автор того сайта, о котором я говорю, решил, что CSS-файл может принимать параметр:

<link type="text/css" rel="stylesheet" media="all" href="css/ddblock-cycle-upright50.css?x" />

И не понял также, какие из приведенных ниже скриптов могут принимать параметры:

<script type="text/javascript" src="js/jquery.js?x"></script>
<script type="text/javascript" src="js/drupal.js?x"></script>
<script type="text/javascript" src="js/lightbox.js?x"></script>
<script type="text/javascript" src="js/nice_menus.js?x"></script>
<script type="text/javascript" src="js/jquery.cycle.all.min.js?x"></script>
<script type="text/javascript" src="js/jquery.easing.1.1.1.js?x"></script>
<script type="text/javascript" src="js/json2.pack.js?x"></script>
<script type="text/javascript" src="js/ddblock.js?x"></script>
<script type="text/javascript" src="js/jquery.pngFix.js?x"></script>
<script type="text/javascript" src="js/suckerfish.js?x"></script>

Вроде бы в текстах это не просматривается...

  Ответить  
 
 автор: AlexSol   (04.06.2012 в 10:18)   письмо автору
 
   для: eastman75   (04.06.2012 в 10:13)
 

файл параметров не принимает. это защита от кеширования.

если вы вызовете jquery.js?x=1 а потом вам потребуется чтобы чобы этот файл принудительно обновился у всех посетителей вашего сайта, то вам достаточно изменить значение параметра: jquery.js?x=2

  Ответить  
 
 автор: confirm   (04.06.2012 в 10:24)   письмо автору
 
   для: eastman75   (04.06.2012 в 10:13)
 

>1) Откуда они повляются?

Появляются только приведения, и то только перед теми кто в них верит. ) У каждого параметра ссылки свои задачи, о некоторых я вам уже говорил, и о чем вам уже сказали еще раз. И такие параметры в ссылках, это не результат потустороннего, не приведения, а специально добавленные параметры.
Я не могу сказать, почему автор этого сайта решил так, так как не являюсь им. Но это и не важно, важно понять для чего это делается. И если вам придется решать подобные вопросы, знайте, что это можно сделать так.

  Ответить  
 
 автор: eastman75   (04.06.2012 в 22:30)   письмо автору
 
   для: confirm   (04.06.2012 в 10:24)
 

Всякое терпение вознаграждается. :-)
Я, конечно, зануда, - но уж больно хочется понять, для чего что делается. Это первый сайт, в котором я увидел прием для кеширования. А потому не судите строго. Вам всем спасибо. Отбой!!!

  Ответить  
 
 автор: lix900   (08.06.2012 в 06:03)   письмо автору
 
   для: eastman75   (04.06.2012 в 22:30)
 

ещё один дурацкий вопрос .

http://video.bigtitscdn.com/flvs/7/30849/30849.flv?nvb=20120607204147&nva=20120608044147&hash=08218f143c84928e9948a

Это тоже против кеширования ?

  Ответить  
 
 автор: AlexSol   (08.06.2012 в 09:43)   письмо автору
 
   для: lix900   (08.06.2012 в 06:03)
 

нет, это параметры по которым отдается видео

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования