Создание своего cms. От теории до собственной CMS интернет-магазина. Замечание о безопасности

Задача построения системы управления содержанием (CMS) может привести в замешательство новичка разработчика PHP. Но не так страшен черт, как его малюют! В данной серии уроков мы построим простую, но полностью работоспособную систему с нуля.

В ходе процесса вы научитесь создавать базы и таблицы MySQL, работать с объектами, константами, включениями, сессиями и прочими инструментами PHP. Кроме того мы покажем, как отделять логику приложения от презентации и сделать код PHP более безопасным. А также вам откроется многое другое, полезное в деле создания собственной системы мечты.

Вы можете посмотреть работу готового приложения на странице демонстрации (с целью безопасности включен режим "только чтение", так что добавлять, изменять и удалять статьи не получится). Также можно скачать полный код PHP нашей меленькой CMS с переведенными комментариями.

Примечание: для изучения материалов уроков потребуется веб сервер Apache с установленным модулем PHP и сервер MySQL. Для работы на локальном компьютере можно воспользоваться одним из инструментов веб разработчика: XAMPP (на английском языке), Denwer , Open server или другим.

Замечание о безопасности

В реальных проектах лучше помещать config.php где-нибудь за пределами корневого каталога веб сайта, так как в файле содержатся имена и пароли. Обычно код PHP невозможно просмотреть в браузере, но иногда из-за неправильной конфигурации веб сервера код становится доступным. Вы можете использовать функцию hash() для хэширования паролей и хранить в config.php хэши, вместо текстовых паролей. Затем при регистрации пользователя можно опять воспользоваться функцией hash() для кодирования введенного пароля и сравнения результата с сохраненным в config.php хэшем.

В следующем уроке мы построим основной класс нашего приложения - Article.

Один из самых простых при этом достаточно эффективный способ создания сайта, это создание сайта на готовом CMS. Так как в интернете огромное изобилие всевозможных бесплатных решений для данного вопроса вам не придется тратить лишние деньги на покупку ненужных вам скриптов и подобного. Все предельно просто и понятно.

Не берусь говорить о точной цифре, но больше половины сайтов в интернете написаны на CMS, и данный метод создания сайта не прекращает набирать обороты. Вам не придется изучать особенности и сложности веб программирования, становится каким либо программистом, вам достаточно будет изучить инструкцию по пользованию конкретным CMS и все.

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

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

Я попытаюсь вам описать как можно подробнее все основные плюс и минусы данного варианта создания сайта:

  1. Трудозатратнось. Средняя так как в конечном итоге в делаете все сами и соответственно изучать материал вам придется самостоятельно, и выполнять всю работу. Безусловным плюсом могу здесь обозначить наличие несложных инструкций, написанных изначально для людей мало разбирающихся в веб программировании и соответственно сами CMS административные панели написаны с учетом этого.
  2. Качество. Безусловно, качество остается на высшем уровне, так как сам код пишут профессионалы и соответственно они знают что делают. Но существуют такой отрицательный момент, что в итоге вы ограничиваетесь рамками возможностей конкретного CMS и не всегда есть возможность реализовать вашу задумку как вы хотите, без соответственных и достаточно хороших знаний веб программирования, но и с ними не всегда все получается.
  3. Финансовые затраты. Этот момент безусловно приятный финансовых затрат у вас ни будет ни каких, так как все бесплатно и уроки и инструкции и конечно сами CMS. Так, что ваш кошелек не пострадает.
  4. Перспективы развития. Да, безусловно они есть, но как я уже говорил они будут ограничены рамками обновления и создания плагинов к выбранному вами CMS. И если вы захотите в кардинально что-то изменить, то возможно вам придется менять весь CMS на другой, поэтому прежде чем остановить свой выбор на конкретном варианте узнайте все возможности у выбираемх вами CMS и подумайте наперед, что вы хотите увидеть на своем сайте в будущем и какие он функции должен выполнять.

Для того чтобы приступить к изучению и созданию сайта на CMS для вас созданы, информационные раздел по разным CMS с подробными уроками по их изучению:


В этом разделе сайта собраны уроки полостью посвященные самому популярному CMS Joomla, на основе которого в интернете создано огромное количество всевозможных сайтов, разного направления.

  1. Обычный сайт визитка, просто подбираем нужный шаблон пишем текст и все.
  2. Достаточно качественный Блог, для реализации данной функции вам потребуется несколько дополнительных компонентов но это не проблема.
  3. Интернет-магазин практически любого объема и сложности.
  4. Сайт каталог или файловый архив.
  5. Портал - реализуется как с помощью стандартных возможностей Joomla
  6. Сайт галерея создание мощной галереи изображений или видео, для этого у Joomla достаточно расширений
  7. 7. Сайт для общения между людьми - для Joomla существует огромное количество компонентов и модулей, специально созданных для реализации общения между посетителями сайта.

Данный раздел полностью посвящен урокам по работе с самым известным движком для блогов WordPress. Самый популярный и востребованный движок для блогов, не только распространяется бесплатно, но и постоянно обновляется и улучшается.

Какие сайты вы можете сделать на основе данного CMS:

  1. Блог это безусловно первое и основное направление для которого был создан этот движок.
  2. Создание обычного статического сайта, в принципе это могут любые CMS
  3. Сайт объявлений
  4. Каталог статей
  5. Сайт фотогалерею
  6. Форум

Как получить доступ к огромной аудитории, которая пока не знает о вашей компании абсолютно ничего? Самое распространенное, простое и надежное решение – создание и запуск сайта компании. Сайт – это такой себе «виртуальный офис», ваше представительство в сети. Место, где вы можете познакомить клиента с собой и своей продукцией.
Все хорошо, одна проблема – это именно создание сайта. Есть простое решение (но не всегда оно вам может подойти) – разработка сайта на онлайн-конструкторе . С таким заданием вы можете и сами справиться, всего-то нужно немного посидеть да разобраться в редакторе. Более сложный путь — использование связки CMS+хостинг. В этом случае потребуются профильные знания. Какой из вариантов подойдёт вам?

uKit – один из наиболее удачных конструкторов сайтов на рынке. Позволяет создавать сайты-визитки различных типов (сайт компании, портфолио, личный сайт), посадочные страницы и небольшие магазины. Визитку можно дополнить лаконичной блоговой лентой.

Относительно любой известной CMS Юкит заметно проще в использовании. В комплекте идут адаптивные тематические шаблоны, ничего дополнительно устанавливать (модули, плагины, скрипты и т. д.) для успешной работы не нужно. Осваивается за 1 вечер без опыта.

Новичкам понравится быстрый старт: короткая регистрация в пару кликов, и вы уже на стадии ввода базовой информации о сайте. Не нужно покупать хостинг, настраивать с нуля движок, искать шаблоны и прочее. Результат же получается приличным. Сайты хорошо смотрятся.

Сайт на конструкторе – хорошая альтернатива CMS. Экономия средств, времени. Легко администрировать, а процесс продвижения ничем особо не отличается от сайтов на CMS, создание которых вам, наверняка, предложат фрилансеры и веб-студии.

Начинающему вебмастеру желательно иметь представление о CMS. Как минимум, чтобы чувствовать себя уверенно в переговорах при заказе сайта. Создать сайт без подготовки в CMS не получится, в отличие от конструктора, но основные моменты мы сейчас разберём: какие из них, для чего и кому подойдут.

Что такое CMS

По своей сути сайт – это веб-приложение, это код, который считывается и отображается браузером. Для разработки сайтов используются различные языки программирования (PHP, JavaScript) и языки разметки – HTML, CSS.

Лет десять-пятнадцать назад каждый уважающий себя программист старался писать сайт с нуля сам. То есть все, что есть, создавалось конкретно под клиента, не было никаких готовых решений. Но и сайты на тот момент были куда проще нынешних.

Каждый сайт имеет стандартный набор функций, стандартную архитектуру. Логично, что куда проще было продумать и сделать какое-то стандартное решение, шаблон, костяк, на основе которого можно было бы создавать разные проекты. Сайты становились все сложнее, функций на них возлагалось все больше. Нужно было как-то публиковать контент, управлять им, иметь доступ к редактированию. Не всегда самописные движки позволяли делать это просто и легко.

Так появились первые CMS, в народе «движки». Аббревиатура расшифровывается как «Content Management System», то есть система управления контентом (содержимым) сайта.

Это программа, которая используется для организации создания, управления, наполнения и совместного доступа к содержимому сайта. На базе движка можно создавать проекты любого вида и любой сложности.

В базовом виде любая CMS – это просто каркас , костяк, на который наращиваются дополнительные функции с помощью подключаемых модулей – плагинов. Это тоже мини-программы, которые интегрируются с системой, и выполняют нужные функцию. Например, есть плагины для сбора подписчиков, для SEO, для подключения функционала интернет-магазина и т.п. В зависимости от движка иногда такие плагины можно подключать и настраивать даже без знания кода. Иногда нужно поморочиться, и посидеть в коде программы.

То есть разработка сайта на CMS – это образно такая себе «игра в конструктор» — взять готовый каркас, нарастить на него нужные функции, подключив правильные плагины, да сделать «ремонт», купив или выбрав тему с подходящим дизайном. Только заниматься такой «игрой» должен все-таки программист, который понимает, что куда подключить, и сможет все правильно настроить.

CMS решает следующие задачи:

  • сокращает время на разработку сайта – многие решения уже готовы, остается только подключить и настроить;
  • позволяет впоследствии владельцу сайта управлять контентом (добавлять, редактировать, удалять) без привлечения стороннего программиста;
  • сайт работает на стабильной системе, которая постоянно обновляется и адаптируется к новым реалиям;
  • легко можно выбрать движок под свои задачи, и в результате получить сайт, который идеально вам подходит.

Но знайте, если сайт будет на готовой CMS – это не будет дороже. И сайт не будет хуже или неполноценным – сегодня на готовых движках работают практически все сайты в сети, даже сайты крупных компаний. Вы получите хороший ресурс с нужным набором функций.

А вот если агентство предлагает самописный движок – вот тут уже нужно думать. Потому что возьмут втридорога, и неизвестно, насколько движок их собственной разработки удобный и стабильный. Лучше остановить выбор на проверенных временем решениях.

Какие же решения проверены и популярны? Читайте дальше.

Виды движков для сайта

Вообще самих CMS огромное количество. На сегодня по данным CMS Magazine их зарегистрировано около 350. Как среди всего этого количество выбрать ту, которая подойдет именно вам? Нужно ориентироваться в первую очередь на ваши задачи.

Давайте разберемся, какие виды движков бывают.

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

В чем преимущество платных CMS – у вас есть гарантированная поддержка разработчика этой системы, которому можно предъявить претензии, если что-то пошло не так.

В зависимости от типа проекта разделять CMS очень сложно. Тут есть те, которые считаются универсальными , то есть подходящими практически под все задачи, но все равно у каждой из них есть какие-то ограничения. Есть и те, которые укоренились в своей нише – например, CMS для интернет-магазинов, для блогов, для социальных сетей и т.п.

Также разделяют движки по степени отчуждаемости :

  • индивидуальные или студийные – это самописные CMS, которые используются конкретной студией или разработчиком и никем больше;
  • коробочные решения , которые используются широким кругом разработчиков;
  • SaaS онлайн-конструкторы сайтов , о которых мы уже рассказывали.

Популярные CMS для вашего сайта

На какой же CMS остановить свой выбор? Давайте рассмотрим самые популярные на сегодняшний день.

WordPress

На этой CMS работает каждый третий сайт в интернете. Этот факт говорит сам за себя – это самый популярный движок в мире. Он бесплатный, и поэтому для него разработано очень много подключаемых модулей. В результате на ВордПресс можно сделать что угодно – как небольшой блог, так и полноценный интернет-магазин. Но заметно, что начинал он свой путь как все-таки решение для блогов – и именно блоги делать на нем лучше всего.

Сайты на WordPress легко создавать , просто поддерживать, быстро продвигать. Стабильный, понятный движок.

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

Подойдет вам, если:

  • у вас ограниченный бюджет на разработку;
  • вы не хотите разбираться в сложной админке – тут она как раз очень проста и интуитивно понятна;
  • вы хотите блог или корпоративный сайт с блогом.

Еще один универсальный бесплатный движок, на котором можно создавать практически все. Второй по распространенности в мире.

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

Joomla! хорошо подходит для крупных порталов, а за счет расширения Virtuemart на его базе можно создать функциональный интернет-магазин.

Подойдет вам, если:

  • вы более-менее уверенный пользователь ПК;
  • хотите сайт, который легко развивать и трансформировать в будущем.

Надежная, многофункциональная бесплатная CMS , которая подходит в первую очередь для крупных порталов и сайтов крупных компаний – например, если вы хотите и блог, и разделы с услугами, и интернет магазин «все-в-одном». Хорошо защищенная, стабильная система, но требует от разработчика хороших навыков разработки сайтов именно на ней. Дилетант не справится.

Подойдет вам, если:

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

1C Битрикс

Разработка компании 1С, платная CMS . Цена отличается от версии к версии. Можно использовать для корпоративных сайтов, и есть у нее одна фишка, если вы захотите интернет-магазин – это интеграция с 1С.

Но что в разработке, что в поддержке, что в использовании – очень сложный движок. Кроме того замечено, что сайты на нем очень долго грузятся и нестабильно работают, особенно при большом онлайне.

Подойдет вам, если:

  • вы хотите интернет-магазин с интеграцией с 1С;
  • у вас есть хороший бюджет на разработку и поддержку данного сайта.

Это самые популярные CMS на рынке, но далеко не все. Выбирая движок для себя, ориентируйтесь в первую очередь на необходимый вам функционал, и наличие у вас бюджета, ресурсов и людей для работы с сайтом, и его поддержки. Чаще всего для небольшой компании достаточно простого решения на базе бесплатного движка.

11 декабря 2018

Существует два простых способа создать сайт - самому или нанять программиста. Если с наймом и оплатой у вас проблемы, то готовьтесь к самостоятельной работе. Но не спешите строить в голове тысячу технологичных схем и не пытайтесь с нуля освоить язык программирования. Есть более простой способ - создать свой первый сайт с помощью движка CMS. Как это сделать - объясняем в нашей Базе Знаний.

Зачем нужны движки CMS?

CMS, или как их еще называют, системы управления контентом/содержимым, отлично подходят для создания MVP (минимальной версии продукта). С CMS вам не обязательно знать программирование и дизайн, чтобы создать сайт, вы можете использовать заранее созданную программу и собрать ваше MVP, как конструктор. Те времена, когда нужно было знать 5 языков программирования, чтобы собрать простенький сайт, прошли! CMS позволяют:

    Сделать MPV без знаний программирования;

    Сделать сайт значительно быстрее, чем создавая код и дизайн с нуля;

    Сэкономить деньги - сайт можно сделать самому, а можно нанять начинающего специалиста.

Что такое система управления контентом?

CMS , от английского Content Management System (система управления контентом ) - это программа, которая дает пользователям возможность создавать сайты с помощью простых инструментов, не притрагиваясь к коду.

Например, один из авторов базы знаний Венчурного Акселератора, Иван Складчиков, использовал CMS Wordpress, чтобы создать MVP сайта с функцией подписки на товары. Вы можете прочитать в деталях, как сделать сайт на Wordpress в нашей .

Для кого существуют системы управления контентом?

“Мы были блогерами и работали в программном обеспечении b2. Нас не устраивало, что программу было сложно настроить, сложно запустить, приходилось руками перемещать код. Мы хотели простоты. Так появился WordPress.”

Мэтт Мулленвег, один из создателей WordPress.

В цитате Мэтт говорит про блог на WordPress, но его цитату можно применить к любому сайту на CMS. Эти программы подходят для создания MPV для проверки гипотез без крупных денежных и временных затрат и их отличает простота. Обычно написание сайта с нуля занимает месяцы и стоит сотни тысяч рублей, а создание сайта на CMS при наличии опыта - дни или недели, и может быть бесплатно

Наиболее популярны следующие системы управления контентом:

    Wordpress - на этой CMS работает 32% всех сайтов в интернете. Подходит для:

    • Блогов;

      Интернет-магазинов с маленьким ассортиментом;

      Информационных сайтов;

      Личных сайтов;

    Joomla - немного более сложный в освоении и “тяжелый”. Подходит для:

    • Сайтов знакомств;

      Форумов;

    Битрикс . Это платная, но полнофункциональная CMS. Подходит для:

    • Интернет-магазинов с большим ассортиментом;

      Корпоративных порталов;

      Информационных сайтов;

      Форумов;

    Tamaranga . Платная CMS заточенная под:

    • Доски объявлений;

      Городские порталы;

      Сайты недвижимости;

      Биржи услуг.

Когда начинать использовать CMS?

CMS стоит использовать, когда у вас уже есть идея бизнеса, вы проверили спрос на продукт более простыми способами и вам нужно создать функциональное MVP или интернет-магазин. Прежде чем думать о CMS, ответьте на вопрос, не достаточно ли для ваших нужд конструктора сайтов, такого как Tilda? Кстати, у нас есть урок как создать MVP на .

Как пользоваться CMS?

Поговорим о том, что вам нужно сделать, чтобы начать создавать свое MVP. Каждая CMS немного разная, но их всех объединяют общие характеристики. Сперва вам нужно установить CMS на свой хостинг. Для этого у вас должен быть оплаченный хостинг и доменное имя.

После установки у вас будет пустой сайт, который вы сможете наполнять из панели администратора. Оттуда вы будете управлять дизайном, содержимым и функциями сайта. С помощью плагинов вы сможете добавлять на сайт новые функции, как кусочки конструктора. Плагины - это заранее созданные программы, которые, как модули, подключаются к сайту. Они скачиваются из магазинов, предоставляемых самими CMS и устанавливаются в один клик. Плагины бывает платные и бесплатные. Например, чтобы пользователи могли оплачивать на сайте покупки, все, что нужно сделать - это подключить платежный плагин.

Для того, чтобы успешно создать сайт на CMS, вы должны уверенно пользоваться компьютером, но вам вовсе не нужно быть техническим специалистом. К тому же у всех CMS есть подробные инструкции по установке и настройке. Используйте эту статью, чтобы выбрать систему управления контентом, которая подходит вам, следуйте инструкциям на официальном сайте и вы сможете создать свой собственный сайт!

Рассмотрим разные варианты более подробно:

Wordpress

Это наиболее гибкая и простая в освоении CMS. Она подойдет для создания блога или сайта с онлайн продажами, маленького интернет-магазина. Однако, на этом ее возможности не заканчиваются. C должной смекалкой на Wordpress можно создать даже web-приложение.

    Официальный сайт wordpress: https://ru.wordpress.org/

    Где скачать: https://ru.wordpress.org/download/

    Инструкции: https://codex.wordpress.org/ru:Main_Page

    Цена: Бесплатно, но премиальные темы и плагины могут стоить тысячи рублей.

Joomla

Joomla более сложная в освоении платформа, которая к тому же будет загружать сайт больше Wordpress, однако, у нее есть продвинутые функции для создании социальной сети благодаря расширению JomSocial. На этой CMS можно сделать целый стартап с элементами социальной сети.

    Официальный сайт Joomla: https://www.joomla.org/

    Joomla на русском языке: http://joomla.ru/

    Где скачать: https://downloads.joomla.org/

    Инструкции: https://docs.joomla.org/Main_Page/ru

    Цена: Бесплатно, но цена JomSocial от $99, премиальные расширения также платные.

1С Битрикс

CMS, на который созданы многие из крупных российских интернет-магазинов, таких, как сайт Леруа Мерлен и Эльдорадо. Одно из преимуществ 1С перед конкурентами - это простая интеграция с сервисами бухгалтерии. Битрикс предлагает множество функций, от шаблонов для создания сайтов до инструментов глубокой аналитики и оптимизации. Однако, стоимость начинается от 5400 руб. Tamaranga

В некотором роде Tamaranga это целых 4 CMS, нацеленных на конкретные типы сайтов: городские порталы, доски объявлений, биржи услуг или сайты недвижимости. Внутри своих ниш Tamaranga правит балом, но платой за это является отсутствие универсальности и высокая цена. Если приобрести прошлую версию, придется отдать разработчикам от 500 $, а за полный комплект расширений заплатить от $2000.

    Официальный сайт Tamaranga: https://tamaranga.com/

    Нужно зайти на сайт и написать создателям CMS какой продукт вы хотите приобрести, разработчики помогут вам завершить процесс покупки.

    Инструкции: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=34&INDEX=Y

    Цена: от 500 $.

Сколько стоит использование CMS?

Тут все зависит от выбранной опции. Есть и бесплатные варианты и платные. Для большинства программ существуют бесплатные темы и плагины, однако все премиальные дополнения будут стоить тысячи рублей.

Для того, чтобы работать с CMS, вам понадобятся хостинг и домен. Домен стоит от 100 руб, а хостинг примерно от 200 руб. в месяц.

Вообще мысля проста создать так сказать модуль для своей CMS который выводил бы предпросмотр новостей... По моему мнению, движок это простое отделение кода PHP от кода HTML Я возможно не правильно его называю, это не движок, если верить терминам то, то, что мы будем писать - это шаблонизатор. Вообщем то это совсем не важно, конечный продукт будет уметь выводить мини новости, и при этом мы сможем менять шаблон не трогая код. Мы не будем вытаскивать информацию из базы данных, просто напрямую впишем ее в переменную. Приступим...Создадим файл index.php в нем напишем такой код

include("module/news.php");
$news = index_page();

include("templates/index.html");
?>

из него видно что мы подключаем два файла. Один из папки "module" т.е. модули, другой из папки "templates" т.е. шаблоны... Как вы поняли нам нужно написать сам модуль и шаблон... Но шаблонов мы будем писать два, один будет содержать разметку главной страницы, а другой будет содержать разметку самой мини новости. Начнем с мини новости, назовем файл news.html






индексы , , , заменятся на переменные в нашем модуле. Теперь напишем шаблон главной страницы, назовем его index.html




Первый движок




Обычная страница html только в ней присутствует php код Тут будут выведены наши новости... Приступим к самому модулю, называем его news.php

function index_page()
{
//Заполняем переменные с информацией
//В наших мининовостях будет виден текст, заголовок, дата и автор
$txt="Печально когда при создание чего то ты забываешь про какие то мелочи...и для того что бы не переписывать все ты пытаешься измудриться так, чтобы вмешательство в код было минимальное..";
$txt="Когда то такие попытки увенчаются успехом, а иногда бывает и так, собственными же руками уродуешь код =(";
$title="Титл новости 1";
$title="Титл новости 2";
$author="Первый автор";
$author="Второй автор";
$date_b="12/10/11";
$date_b="13/10/11";

$sm_read = file("templates/news.html");//Открываем шаблон
$sm_read = implode("",$sm_read);//Так как функция file() в результате дает нам массив, то склеиваем его
for($i=0;isset($txt[$i]);$i++)//Выводим цикл где меняем индексы на информацию из переменных
{
$edd_tamp = $sm_read;
$edd_tamp = str_replace("",$txt[$i],$edd_tamp);
$edd_tamp = str_replace("",$title[$i],$edd_tamp);
$edd_tamp = str_replace("",$author[$i],$edd_tamp);
$edd_tamp = str_replace("",$date_b[$i],$edd_tamp);

$news .= $edd_tamp;//Склеиваем все в одну переменную
}
return $news;//Выводим результат функции
}
?>

Собственно небольшой движок написан...Поместим файлы news.html и index.html в папку templates. Файл news.php в папку module, а файл index.php в корень сайта...

Это лишь простой пример реализации скрипта который может генерировать страничку "на лету". Более подробнее оп простом движке на php может почитать

mob_info