ТаблицейБлоками.Советы начинающим Веб-дизайнерам |
Последняя модификация: 10.08.2014 г
Страница загружена с адреса: http://webdesign.site3k.ru/sovet/webtrick.html
Бесплатный хост на HTTP://by.ru существует за счет рекламы (это касается и других, но ситуация рассматривается на примере by.ru). Свои рекламные строки:
<!-- строчка рекламы by.ru --> <script language="JavaScript" type="text/javascript" src="http://more.h11.ru/up/up.js?630472768"></script>
by.ru вставляет в каждую, размещаемую на нем страницу, перед выдачей посетителю. Однако, когда браузер посетителя делает запрос страницы, выдаваемое сервером сообщение о ее размере не учитывает этих, приклеиваемых 140 байт. Это не правильная настройка сервера и администрации следовало бы ее изменить
Ну и что? - спросите вы.
А то, что, по крайней мере, Опера (самый быстрый браузер), загружает ровно столько, сколько указано сервером и, получив лишние 140 байт в начале файла, не догружает 140 байт с конца. В результате, посетитель не увидит вашей подписи, или почтового адреса, или, вместо выполнения скрипта, отобразит его начало:
<script langu
Избежать этого недоразумения поможет помещение в конец страницы пары сотен пробелов (больше 140, на случай изменения хостингом длины скрипта). Если они загрузятся посетитель их не увидит. Если нет он не увидит их тем более. Конечно, это несколько увеличивает страницу, но не настолько, чтобы стать проблемой. Зато обеспечит ее нормальное отображение.
Создавая сайт, можно не думать о баннерных сетях и прочих вещах такого плана. Но представьте, что, наштамповав сотню страниц, вы вдруг решили стать участником баннерной сети, или разместить (за деньги) у себя чьи-то баннеры. Понравится вам идея переделать все сто страниц, чтобы включить в них баннеры?
Думаю, нет, а вот идея изменить только один файл, чтобы, в результате, баннеры появились на всех страницах, наверняка понравится. Правда, в предлагаемом мною методе, позаботится об этом, придется заранее.
Суть метода заключается во включении в «баннерное» место небольшого кода:
<SCRIPT LANGUAGE="JavaScript" src="baners.js"></SCRIPT>
Некоторые программы, например, Ультраэдит или FILEFIND.EXE из Нортоновских утилит под DOS, позволяют сделать это сразу для всех выбранных файлов (команда замены </BODY> на <SCRIPT LANGUAGE="JavaScript" src="baners.js"></SCRIPT></BODY>, или что-то в том же духе).
Сам файл baners.js, на который ссылается скрипт, содержит примерно такой код:
document.writeln('<center style="text-indent:0pt"><IMG SRC="MyBaner" ></center>');
Который можно менять, в зависимости от текущих потребностей. Изменение кода в этом файле отразится во всех файлах, на него ссылающихся. При желании, можно сделать несколько отдельных файлов со скриптами для определенных типов страниц. Корректировать их, в любом случае будет проще, чем корректировать весь сайт.
Если же на сервере поддерживаются SSI-диррективы, включить баннерный код будет еще проще. Страница должна содержать:
<!--#include virtual="baners.txt" -->
А файл baners.txt – простые теги включения баннера:
<center style="text-indent:0pt"><IMG SRC="MyBaner"></center>
Если в поисках лучшего хостинга вы решили сменить адрес и не хотите терять прежних посетителей, вы можете либо поддерживать сразу несколько сайтов, указав на них адреса дубликатов, либо сразу переадресовать посетителя на новый сайт. Автоматическая переадресация лучше, чем простая ссылка, поскольку от посетителя не требуется совершение никаких действий, от совершения которых он может отказаться, если ресурс ему не очень ценен (а так, скорей всего, оно и есть, если сайт только недавно создан и еще не набрался содержымым). Поэтому, если поддержка прежнего адреса больше не требуется, между закрывающим тегом </head> и тегом <Body> (или внутри блока head) полезно поместить HTML-инструкцию <meta http-equiv="refresh" content="0; URL=index.html"> где вместо index.html указать адрес нового ресурса. По истечении секунды, после загрузки, посетитель будет переброшен на указанный ресурс (подробности в HTML 3.2 Скачать!!!), при этом важно, чтобы файл переброски имел как можно меньший объем и, следовательно, быстрее загружался.
Более быстрый способ переброски заключается в использовании скрипта, например на JavaScript. Многие сервера бесплатного хостинга не поддерживают скрипты (поскольку тема для начинающих, подразумевается что хостинг у них бесплатный), и JavaScript, насколько мне известно, единственный, не требующий серверной поддержки. Поэтому другие скрипты здесь не рассматриваются. Требующийся нам JavaScript имеет следующий вид:
<SCRIPT LANGUAGE="JavaScript"> <!-- window.location.href ='index.html' // --> </SCRIPT>
Включаясь вслед за тегом <head> или <body>, он становится первой выполняемой браузером инструкцией, без ожидания загрузки остального документа и какой-либо паузы. Фактически, за этим тегом может следовать еще эпопея «Война и Мир» Л. Н. Толстого, но этого никто не успеет заметить. В целом, применение данного скрипта эфективней чем предложенное выше применение команды обновления, но у пользователя может оказаться отключеным использование скриптов (поэтому применение JavaScript следует применять только там, где это необходимо, либо, там, где их отключение не нарушает документ и, в часности, не заменять ссылки скриптами) и на этот случай следует продублировать скрипт указанной выше инструкцией обновления. Ссылку на новый ресурс и комментарий, в этом случае, тоже следует поставить, чтобы посетитель выдел, куда его перебрасывают.
В итоге файл переадресации имеет следующий вид:
Попадая на эту страницу, посетитель обязательно окажется на указанной в «window.location.href» странице. Если же JavaScript у посетителя отключен, то он вряд-ли пройдет мимо кричащего приглашения на главную страницу. Но а если все-таки пройдет, то срабатывающая через секунду, команда «meta http-equiv="refresh"», независимо от желания пользователя и настроек JavaScript, откроет указанный в ней файл.
Другим способом переадресации является установка заголовка в PHP-скрипте, вроде этого:
Header("Location: http://webdesign.site3k.ru");
Или инструкцией в файле .htaccess (см. настройке файла .htaccess):
Redirect /устаревшая_страница новый_адрес