• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Header подгружаемый на всех страницах, без сборщиков, без инструкций в файлах с контентом

kuzduk

Green Team
21.09.2011
29
9
BIT
24
Всем привет. Прошу помощи в следующем вопросе: нужно чтобы какую страницу ни загрузи на сайте, чтобы сверху всегда подгружался header.html. Обязательно, чтоб не было файлов-сборщиков, и не нужно было добавлять во все страницы с контентом инструкции по подгрузке шапки, т.е. сервер сам должен подгружать к любой странице шапку - инструкции даются серверу - как это можно сделать? Всё найденное мною и прочитанное про php, frame, iframe, SSI - либо файлы-сбощики, либо добавление в файлы с контентом инструкций по добавлению блоков типо include, а нужно чтоб сервер сам добавлял - одна глобальная команда для сервера для любой вызванной страницы.

Вот мой сайт: - построен на html frame. Файлы с контентом и head.html конструируются файлами сборщиками, от которых хотелось бы избавиться.

Например, страница с контентом: - вызываем её, она загружается без шапки, но если вызвать (т.е. ) то запустится index.html который является сборщиком на фреймах, имеет такой код:


HTML:
<frameset rows="60, *" frameborder="0" framespacing="0">
<frame src="/head/" name="frhead"   id="frhead" scrolling="No"   marginheight="0"   marginwidth="0" noresize >
<frame src="kataloger.html" name="frosn"    id="frosn"  scrolling="auto" marginheight="10"  marginwidth="100"   frameborder="0" >
</frameset>
мне же нужно чтобы сервер выполнял подгрузку head.html к любой страницы, выражаясь синтаксисом html frame, что типо такого :

HTML:
<frameset rows="60, *" frameborder="0" framespacing="0">
<frame src="/head/" name="frhead"   id="frhead" scrolling="No"   marginheight="0"   marginwidth="0" noresize >
<frame src="ЛЮБАЯ_СТРАНИЦА"    name="frosn"    id="frosn"  scrolling="auto" marginheight="10"  marginwidth="100"   frameborder="0" >
</frameset>


Например вот эти советы не подходят:

Самое простое - использовать SSI (Server Side Includes).
1. Создаем файл header.html и в него записывает то, что надо размножить.
2. В файле .htaccess делаем запись типа такой, где перечисляются расширения файлов, в которых можно делать инклюды:
AddHandler server-parsed .shtml .shtm .htm .html
3. В коде страниц, куда надо вставить содержимое файла header.html пишем:
<!--#include file="header.html"-->
В итоге один и тот же блок будет показываться на всех страницах. У сервера он будет сидеть в кэше. Править теперь достаточно в одном месте, а не на всех страницах.
Пункт 3 подразумевает вписывание инструкций в файл с контентом - этого я пытаюсь избежать.



Вариант на php подразумевает в писывание интсрукций по разделению страницы в тело файла с контентом - что тоже не приемлемо:
В файле index.php прописать:
<?php
require '<путь к файлу с header>';
?>
<КОНТЕНТ>
<?php
require 'путь к файлу с footer';
?>
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!