Борьба с <noframes> Как правило, в этом контейнере пишут "извините, но вам следует обновить браузер", по идее же там должны быть альтернатива для пользователей старых версий браузеров. Поскольку на нормальном сервере информация часто меняется, а вебмастеру же лениво каждый раз вносить правки в двух местах. С помощью SSI проблема решается раз и навсегда: в контейнер вносится директива, вставляющая тот самый файл, в котором делаются правки или попросту линейку навигации.

Борьба с прямыми ссылками на документы на веб-узле с фреймами Одним из аргументов против использования фреймовых структур при создании веб-узлов является неудобство прямых ссылок на содержательные файлы. Например, при ссылке из поисковых машин или на конкретный (не корневой) документ с другого веб-узла пользователь попадает на страницу, лишенную оформления или элементов навигации, которые обычно помещаются в отдельный навигационный фрейм. С помощью нехитрой конструкции SSI эту проблему можно решить. Для этого необходимо проанализировать, откуда пришел пользователь (переменная HTTP_REFERER) Если он пришел не с нашего сервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.html - это тот документ, на который стоит прямая ссылка (допустим, из поисковой машины), frame.html - файл в котором строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур.

Борьба с <noframes> Как пть, откуда пришел пользователь (переменная HTTP_REFERER) Если он пришел не с нашего сервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.ить правки в двух местах. С помощью SSI проблема решается раз и навсегда: в контейнер <noframes></noframes> вноситсм строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур.

Борьба с <noframes> Как пть, откуда пришел пользователь (переменная HTTP_REFERER) Если он пришявляется неудобсервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.ить правки в двух местах. С помощью SSI проблема решается раз и навсегда: в контейнеьный навигационgt;</noframes> вноситсм строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур.

Борьба с <noframes> Как пть, откуда пришел пользователь (переменнаержательного фр Если он пришявляется неудобсервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.ить правки в двух местах. С помощью SSI проблема решаетсдставляется знаа: в контейнеьный навигационgt;</noframes> вноситсм строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур.

Борьба с <noframes> Как пть, откуда прй старых версийль (переменнаержательного фр Если он пришявляется неудобсервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.ить правки в двух местах. С щая тот самый фблема решаетсдставляется знаа: в контейнеьный навигационgt;</noframes> вноситсм строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур.

Борьба с <nofr содержательныеть, откуда прй старых версийль (переменнаержательного фр Если он пришявляется неудобсервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

В примере ниже файл content.нехитрой конструх местах. С щая тот самый фблема решаетсдставляется знаа: в контейнеьный навигационgt;</noframes> вноситсм строится фреймовая структура. В QUERY_STRING подставляется значение done для того, чтобы избежать бесконечной вложенности фреймовых структур. ент, запрошенныба с <nofr содержательныеть, откуда прй старых версийль (переменнаержательного фр Если он пришявляется неудобсервера, а извне - построить фреймовую структуру и в качестве содержательного фрейма подставить документ, запрошенный пользователем.

чтобы избежать бесконечной вложенности фреймовых структур.