Рекламное объявление
Для обычного интернет-пользователя просмотр веб-контента прост. Вы открываете браузер, вводите URL и вуаля! Страница появляется вверх. Но с другой стороны, есть программное обеспечение, которое усердно работает, чтобы предоставить вам эту страницу. И большое количество этих серверов используют системы управления контентом для создания и обслуживания вашего любимого контента.
Что на самом деле происходит, когда вы «открываете» страницу из CMS? Давайте посмотрим на различные части систем, которые выводят контент на ваш экран.
Ранняя паутина
Улучшения в веб-хостинге
В конце 1990-х - когда сеть начала набирать обороты - было много компонентов, позволяющих пользователям доступ их любимый веб-контент легко. Ситуация прогрессировала от загрузки веб-страниц непосредственно с хост-серверов до более сложной системы:
- Упрощенный доступ к регистрации системы доменных имен через частных лиц, что позволило связать произвольные метки, которые мы теперь знаем как доменные имена, с IP-адресами. Это позволило пользователям легко находить свои любимые сайты.
- Протокол передачи гипертекста (HTTP) предоставил стандартный метод отправки информации через Интернет. Это позволило отдельным лицам и организациям сделать свой контент доступным в формате HTML, чтобы любой мог прочитать его с помощью совместимого браузера.
- Появились веб-серверы, цель которых - дождаться запросов на веб-страницы и отправить обратно страницу. Это позволило администраторам легко масштабировать и защищать свою среду хостинга.
За это время браузеры стали доступны бесплатно, интернет-провайдеры, такие как AOL, предлагали неограниченный коммутируемый доступ, и пользователи мигрировали из закрытого сообщества (например, системы BBS) в открытое веб-приложение. содержание. Но, несмотря на спрос на информацию, одна часть экосистемы все еще пострадала.
Недостатки в веб-авторинге
Процесс создания всех этих ранних веб-сайтов все еще был сосредоточен на ручных страницах в HTML. Это часто приводило к встроенному стилю и большому количеству очень нестандартного кодирования, особенно для «динамических» сайтов того времени (например, электронная коммерция на таких языках, как Perl). Кроме того, процесс издательский веб-сайт по-прежнему требует технических знаний FTP-передачи и веб-хостинга.
Затем больше пользовательского контента стало появляться в виде «профильных» сайтов, таких как Yahoo и MySpace. Службы блогов, такие как Blogger и LiveJournal, сделали еще один шаг вперед, в то время как настольные «редакторы веб-страниц» позволили создать (плохо выглядящую) веб-страницу, не зная никакой разметки. Это вдохновило сегодня системы управления контентом общего назначения, которые позволяют пользователям легко:
- Создавайте новые страницы с богатым форматированием.
- Организовать страницы в иерархию сайта.
- Управление мультимедиа на страницах, таких как изображения.
- Разрешить другим пользователям взаимодействовать с сайтом, вплоть до создания собственных страниц.
В следующих разделах мы рассмотрим, как именно CMS делает эти задачи такими простыми.
Компоненты CMS
На сегодняшний день доступно множество десятков приложений CMS, но большинство из них имеют следующие общие черты:
- Они построены на определенном языке программирования / сценариев. В отличие от HTML, который только наценкаязык программирования позволяет веб-страницам выполнять такие операции, как определение того, кто пытается их использовать, или выбор результатов на основе поиска.
- Они используют базу данных Так что же такое база данных? [MakeUseOf Объясняет]Для программиста или технологического энтузиаста концепция базы данных - это то, что действительно можно принять как должное. Тем не менее, для многих людей сама концепция базы данных немного чужая ... Подробнее для хранения содержимого страниц, списков пользователей / паролей или входных данных из представленных форм.
- Они используют веб-сервер Как настроить веб-сервер Apache за 3 простых шагаКакова бы ни была причина, вы можете в какой-то момент запустить веб-сервер. Хотите ли вы дать себе удаленный доступ к определенным страницам или службам, вы хотите получить сообщество ... Подробнее . Он выполнит файлы подкачки (и их программирование) и вернет полученный HTML-код в браузер посетителя.
Мы рассмотрим каждый из них по очереди ниже.
Языки программирования CMS
Одним из основных различий между различными CMS является язык программирования, который они поддерживают Какой язык программирования выучить - веб-программированиеСегодня мы собираемся взглянуть на различные языки веб-программирования, которые питают Интернет. Это четвертая часть серии программ для начинающих. В части 1 мы изучили основы ... Подробнее . Языки программирования используются для того, чтобы сделать сайт «динамическим», то есть выполнять вычисления или другую логику. Эти операции могут быть простыми: от отображения текущего года в авторском праве нижнего колонтитула до добавления и отображения числовых отчетов.
Существует как минимум одна CMS для всех основных языков веб-программирования, включая:
- PHP:WordPress, Drupal, Joomla
- ASP.NET:DotNetNuke (DNN CMS)Умбрако
- Python:Джанго, Plone
- Джава:под открытым небом, магнолия
Из этих языков (и других) PHP Научитесь строить с помощью PHP: ускоренный курсPHP - это язык, который Facebook и Wikipedia используют для ежедневного обслуживания миллиардов запросов; де-факто язык, используемый для обучения людей веб-программированию. Это красиво просто, но невероятно мощно. Подробнее стал лидером в создании систем управления контентом по нескольким причинам. Во-первых, это открытый исходный код, который нельзя было сказать о всех языках с самого начала. В результате этот язык был включен бесплатно во многие дешевые хостинговые планы, где размещаются небольшие сайты. Кроме того, это по большей части простой язык для начала, позволяющий новым пользователям взламывать свои собственные функции на своих сайтах. Наконец, веб-сервер Apache с самого начала включал PHP в качестве модуля. Настроить ведущий в мире веб-сервер было легко и быстро.
В то время как некоторые другие языки добились успехов против.NET теперь с открытым исходным кодом GNU, начинающееся для Microsoft: что означает .NET Framework с открытым исходным кодом для всех остальныхMicrosoft только что выпустила значительную часть своего кода под лицензией с открытым исходным кодом. Этот шаг разрывается с годами традиций. Но почему и что это значит для вас? Подробнее например), пройдет некоторое время, пока они захватят значительную долю рынка от подобных WordPress.
Базы данных CMS
Язык программирования данной CMS также определяет, какие базы данных он поддерживает или требует напрямую. PHP имеет отличную поддержку MySQL Пошаговое руководство по MySQL для самостоятельных блоггеров WordpressЕсли вы блоггер, скорее всего, вы используете WordPress. Есть два способа использования WordPress, идеально подходящие для тех, у кого есть технические знания, и для тех, у кого нет. Во-первых, чтобы ... Подробнее , хотя использующие его CMS часто можно настроить для работы с PostgreSQL или SQLite Изучите SQL или создайте простую базу данных с помощью браузера баз данных SQLiteВы когда-нибудь нуждались в базе данных, но вы не можете позволить себе Microsoft Access, и вы, конечно, не можете позволить себе установить и использовать сервер Oracle дома. Является ли ваша цель ... Подробнее также. Аналогично, DNN CMS поддерживает Microsoft SQL Server, в то время как Alfresco поддерживает корпоративные и дружественные к Java базы данных, такие как Oracle и db2. В конце концов, база данных, которую вы используете для CMS, может также зависеть от того, что предоставляет ваша хостинговая среда. Хостинг для вашего блога почти наверняка сделает MySQL доступным для вас, в то время как ваша компания может использовать только Oracle.
База данных хранит большую часть контента для большинства CMS, за исключением файлов приложения (шаблоны страниц, надстройки и т. Д.), Мультимедиа (изображения и видео) и некоторых конфигураций. Но текст на данной странице, а также пути к медиа-файлам и URL-адрес, на котором она находится, часто хранятся в таблицах БД.
CMS веб-сервер
Наконец, CMS является веб-приложением и, следовательно, требует веб-сервера. Благодаря использованию различных модулей Apache может поддерживать все четыре вышеупомянутых языка и многое другое. Новые веб-серверы набирают популярность Лучшее программное обеспечение веб-сервера для Linux (и альтернативы Apache) Подробнее , Такие как Nginx и Lighttpd, а также поддерживать различные наборы языков с помощью дополнений.
Веб-сервер будет выполнять файлы сайта. Эти типы файлов (.PHP, .JSP и т. Д.) Обычно просто разметка HTML 17 простых примеров кода HTML, которые вы можете выучить за 10 минутХотите создать простую веб-страницу? Изучите эти примеры HTML и попробуйте их в текстовом редакторе, чтобы увидеть, как они выглядят в вашем браузере. Подробнее с кодом языка программирования, смешанным в. Когда веб-сервер обрабатывает страницу, он выполняет любой программный код, с которым сталкивается, с помощью своего модуля / надстройки для этого языка. К тому времени, когда будет завершена обработка страницы, программный код будет заменен каким-то дружественным для браузера контентом.
Если вы посмотрите выше, вы увидите, что код на самом деле помогает создать страницу, «получая» заголовок и шаблон страницы. Чтобы сделать вещи более сложными, один файл может вызвать один или несколько других файлов для помощи. Поскольку мы рассмотрим некоторые реальные запросы к CMS в следующих разделах, имейте в виду, что запуск «файла PHP» может фактически включать запуск многих.
CMS в действии
Самый простой способ описать CMS - это взять несколько примеров операций и пройти по шагам для каждого. Как и в предыдущем примере, эти процессы начинаются с запроса страницы и заканчиваются отправкой веб-сервером некоторого HTML (и CSS / Javascript) обратно в браузер. Но между шагами, которые мы рассмотрим ниже, есть несколько шагов, предполагающих использование CMS на основе PHP.
Запрос страницы
Основное взаимодействие с CMS - это обычный пользователь, запрашивающий одну из своих страниц. Например, взять эта статья 7 причин отказаться от вашей CMS и рассмотреть статический генератор сайтовНа протяжении многих лет публикация сайта была сложной для многих пользователей. CMS, такие как WordPress, изменили это, но они все еще могут сбивать с толку. Другой альтернативой является генератор статического сайта. Подробнее на MakeUseOf. У него есть URL-адрес, но в каталоге в этом месте нет действительного файла. Когда браузер читателя запрашивает URL-адрес, веб-сервер запускает один из файлов PHP CMS, например index.php файл.
Страница PHP обрабатывает запрос, запрашивая базу данных для страницы CMS с соответствующим URL-адресом в своих метаданных (опять же, в месте расположения URL-адреса нет фактического файла). Затем он будет читать содержимое страницы (обычный текст и графика, а также виджеты) и метаданные. (заголовок, какой шаблон он использует и т. д.) из БД и верните HTML-код страницы для браузера: визуализации. Короче говоря, он использует URL для выбора какая страница записи в базе данных использовать.
Вход в систему
Таким же образом, пользователь, который хочет войти на сайт (например, для просмотра страницы «только для членов» Как создать сайт только для членов с помощью Wordpress Подробнее ) необходимо будет предоставить учетные данные. Когда они пытаются перейти на страницу, о которой идет речь, БД будет содержать разрешения, указывающие на то, что страница требует входа в систему.
При вводе имени пользователя и пароля на странице типа login.php, он запросит в базе данных пароль предоставленного имени пользователя, сделает сравнение, чтобы убедиться, что они совпадают, и отправит пользователя обратно на запрошенную страницу, если это применимо.
Обновление страницы
Обновление страницы в CMS обычно требует доступа к экрану администрирования, внесения изменений в содержимое страницы и повторного сохранения / повторной публикации. Например, WordPress содержит страницу WP-администратора / post.php. Сначала он проверит, вошел ли пользователь в систему, и если да, то является ли он администратором. Затем он запросит в базе данных контент, представляющий страницу, которую пользователь хочет изменить, заполнив элементы управления редактированием, такие как текстовые области и селекторы изображений.
Пользователь может взаимодействовать с этими элементами управления (например, изменяя текст или заменяя изображения заголовков), нажимая кнопку «Сохранить» или «Опубликовать», когда закончите. В этот момент экран администратора примет новые заполненные значения и обновит их в базе данных.
CMS делают веб-авторинг доступным
Хотя внутренне они являются сложными приложениями, на первый взгляд, такие CMS, как WordPress, упрощают разработку в Интернете для нетехнических пользователей. Кто-то, кто хочет опубликовать простой блог, может подписаться на дешевый хостинг аккаунтнажмите несколько кнопок и подготовить CMS в течение нескольких минут Как установить WordPress на виртуальный сервер бесплатно с помощью Cloud9Установите Wordpress в виртуальной среде, используя пространство сервера Cloud9. Кодирование не требуется. Нет необходимости загружать программное обеспечение. Вы будете возиться с установкой WordPress всего за пару минут. Подробнее . За пару долларов больше, хостинговая компания может даже управлять обновлениями и обслуживанием этого.
Есть ли у вас веб-сайт или блог на определенной CMS? Облегчает ли ваша система управления контентом вашу работу? Или вы бы предпочли просто загрузить HTML в свою учетную запись хостинга, как в прошлый раз? Сообщите нам в комментариях, если вы преданный CMS или сторонник HTML старой школы.
В течение пятнадцати лет Аарон работал в области технологий как бизнес-аналитик и менеджер проектов, и почти столько же лет был лояльным пользователем Ubuntu (со времен Breezy Badger). Его интересы включают в себя открытый исходный код, приложения для малого бизнеса, интеграцию Linux и Android, а также вычисления в текстовом режиме.