Что такое формат файла INC?
Файл .inc в веб-контексте представляет собой фрагмент HTML, предназначенный для вставки в другие страницы веб-сервером с использованием технологии Server Side Includes (SSI). SSI возникла примерно в 1994 году вместе с сервером NCSA HTTPd; модуль Apache mod_include позже стал доминирующей реализацией и продолжает поддерживаться в Apache 2.4.x.
Веб-сервер обрабатывает директивы SSI, написанные в синтаксисе комментариев HTML - например, <!--#include virtual="/header.inc" --> - и подставляет фрагмент в итоговый ответ перед его отправкой в браузер. Браузер никогда не получает файл .inc напрямую; он видит только объединенный HTML-вывод.
Типичное использование - это повторно используемые элементы всего сайта, такие как заголовки страниц, подвалы и навигационные панели. Поскольку любое изменение в файле .inc мгновенно распространяется на каждую страницу, которая его включает, SSI предлагала примитивную форму серверных шаблонов до того, как PHP и другие языки сценариев стали стандартом.
Расширение .inc является соглашением без строгого формата: то же расширение также используется файлами включения PHP, файлами включения ассемблера и фрагментами исходного кода Delphi/Pascal. Файл .inc, предназначенный для SSI, представляет собой обычный текст UTF-8 или ASCII - фрагмент HTML без оболочек <html>, <head> или <body>. SSI в значительной степени устарела для новых проектов, ее заменили PHP include/require, шаблонизаторы, такие как Jinja2 и Twig, и генераторы статических сайтов, такие как Jekyll или Hugo.
Безопасность и защита
РИСК: LOWФайл .inc является обычным текстом - он не содержит исполняемого бинарного кода и сам по себе не является вектором вредоносного ПО. Однако файл .inc, содержащий код PHP или SSI, обрабатываемый сервером, выполняется на сервере; злонамеренно созданный .inc с серверным кодом может нанести вред, если он загружен на сервер и включен в работу. Как файл, который вы скачиваете и открываете в текстовом редакторе: безопасен. Основной риск - неправильно настроенный веб-сервер, который отдает файлы .inc напрямую (например, раскрывая учетные данные базы данных в config.inc).
Детали формата
в двух словах- Файл включения PHP - Разработчики PHP часто называют включенные фрагменты кода PHP с расширением .inc (например, config.inc, db.inc); обрабатываются на стороне сервера PHP, никогда не передаются напрямую в браузеры.
- Файл включения Assembler/Pascal/Delphi - Многие языки программирования (ассемблер x86 NASM/MASM, Pascal/Delphi, Fortran) используют .inc для файлов включения, содержащих константы, макросы или общие объявления.
- Включение данных игры/движка - Игровые движки, включая GZDoom (DECORATE/ZScript), Quake/Source engine и AutoHotkey, используют .inc для фрагментов данных или сценариев, включаемых в более крупные скрипты.
Программы, открывающие файлы INC
Технические подробности
глубокая спецификация| Тип файла | Обычный текст - фрагмент HTML (частичное содержимое страницы без структурных оболочек) |
| MIME-тип | text/html (основной); text/plain (альтернативный) |
| Кодировка | UTF-8 или ASCII - соответствует кодировке включающей страницы |
| Сжатие | Нет - несжатый обычный текст |
| Шифрование | Нет - доступ контролируется на уровне веб-сервера, а не файла |
| Типичный размер | Менее 10 КБ (повторно используемый фрагмент HTML, такой как заголовок или подвал сайта) |
| Магические байты | Нет - текстовый файл без бинарной сигнатуры |
| Синтаксис директив SSI | Синтаксис комментариев HTML: <!--#include virtual="/path/file" --> или <!--#include file="relative/path" --> |
| Серверная обработка | Apache mod_include или Nginx ngx_http_ssi_module обрабатывает директивы и внедряет фрагмент перед отправкой ответа в браузер |
| Видимость в браузере | Браузер никогда не получает файл .inc напрямую - он получает только полностью собранный HTML-ответ |
| Поддержка IIS | Поддерживается через модуль IIS Server Side Includes (SSINC) в Windows |
| Связанные ОС | Linux, Windows, macOS (любая ОС с установленным Apache, Nginx или IIS) |
| Общее использование | Заголовки, подвалы и навигационные панели всего сайта - фрагменты HTML, повторно используемые на нескольких страницах |
| Заменено на | PHP include/require, Jinja2, Twig и генераторы статических сайтов (Jekyll, Hugo, Next.js) для новых разработок |
| Выпущен | ~1994 (NCSA HTTPd server includes); Apache adopted and extended |
| Последняя версия | N/A - SSI is a static web technology; Apache mod_include still maintained in Apache 2.4.x |
| Открыть стандартное | Да · без роялти |
| Спецификация | httpd.apache.org |
Конвертации INC
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах INC.