Файл: Особенности алгоритмизации при работе WEB-приложений.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 307

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Список защитных мер [17]:

1. Регулярно, не реже двух раз в год, нужно менять все пароли к хостингу, FTP/SSH и админ-панели. Использовать только сложные, нестандартные наборы символов (оптимально 8-12 знаков в пароле). Хранить их лучше в специализированных программах.

2. Ограничивать доступ к админ-панелям. Это достигается путем регулярной смены паролей и установке ограничения доступа по IP или при помощи дополнительной веб-авторизации.

3. Использовать только проверенные плагины и расширения. Плагины и модули могут уже изначально содержать вредоносный код или иметь критическую уязвимость. Это даст злоумышленнику возможность полностью управлять сайтом.

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

5. Защищать соединение между сайтом и компьютерами. желательно отдавать предпочтение SSH/SFTP. А также использовать на сайте SSL-сертификаты. Помимо защиты, SSL-сертификат обладает еще одним явным преимуществом – он значительно повышает доверие к сайту и повышает его рейтинг в поисковой выдаче.

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

7. Установить запрет на запись в файлы и папки, которые не меняются при работе скриптов. Это необходимо сделать с теми внутренними файлами сайта, которые практически всегда остаются без изменений, и которые редко открываются. Это защитит сайт от незаметного размещения вредоносного кода.

8. Использовать сервис для мониторинга безопасности сайтов. Он позволяет выявить проблему с безопасностью сайта быстрее поисковых систем, тем самым дать время на исправление проблемы до блокировки сайта.

2 ВЫБОР СРЕДСТВ РАЗРАБОТКИ САЙТА

Для разработки корпоративного сайта необходимо выбрать средства: систему управления контентом (CMS, Content Management System), систему управления базой данных (СУБД), хостинг для физического размещения сайта и доменное имя для сайта. Данные средства с одной стороны имеют совершенно разную основу работы, с другой стороны – они должны быть взаимосвязаны. Например, не все хостинги поддерживают любые CMS или СУБД; не каждая СУБД подойдет для обслуживания CMS и др. Поэтому выбор средств разработки сайта должен осуществляться довольно тщательно и согласовываться с другими компонентами.


Система управления контентом (CMS) – это специальная программа, которая представляет собой основу или «движок» сайта, на которой разрабатывается и функционирует ресурс, находясь в сети интернета. В огромной степени от движка будет зависеть то, насколько надежным и безопасным будет вебсайт, удобным ли будет управление, продвижение, манипуляции с контентной информацией, расширение структуры и т.д. [24].

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

Существует множество вариантов классификации CMS, но иногда деление бывает не всегда однозначным. Даже такая простая классификация, как на платные и бесплатные CMS. Все CMS можно разделить на две большие группы: платные (коммерческие, коробочные) и бесплатные (свободные, некоммерческие) движки. Но в тоже время многие платные CMS имеют бесплатную начальную версию, это называется условно платные, а в рамках бесплатных CMS, разрабатываются платные версии или дополнительные платные инструменты – плагины, модули и др.

Тем не менее, у каждого вида CMS имеются свои достоинства и недостатки (см. таблицу 1). Особенности платных CMS:

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

Особенности бесплатных CMS [20]:

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

Таблица 1 – Преимущества платных и бесплатных CMS

Критерии сравнения

Платные CMS

Бесплатные CMS

1

Стоимость CMS

Высокая

Бесплатно

2

Стоимость плагинов и модулей

Высокая или средняя

Бесплатно или средняя

3

Новые релизы

Средний уровень

Частые обновления и исправление ошибок

4

Уровень безопасности

Высокая

Высокая или средняя

5

Установка и настройка

Легкая

Средняя или легкая

6

Документация

Официально разработанная высокого уровня

Средняя или слабая

7

Техническая поддержка

Официальная служба поддержки

Интернет-форумы

Таким образом, у платных CMS нет особых преимуществ и на бесплатных CMS создается множество профессиональных сайтов. Но задача выбора движка не намного упрощается, т.к. и в группе бесплатных CMS – их большое количество, из которого нужно выбрать достойный движок. Для этого можно использовать результаты различных рейтингов. Если посмотреть рейтинги последних лет, то они достаточно предсказуемы. Некоторые CMS меняются местами в рейтинге, но, тем не менее, остаются в первой десятке. На рисунке 3 представлен рейтинг бесплатных CMS [35].

Рисунок 3 – Рейтинг бесплатных CMS

Рассмотрим краткие характеристики самых распространенных бесплатных CMS.

WordPress (WP) – самая популярная CMS на сегодняшний день. Изначально это была инновационная блог-платформа, которая сформировала интернет-среду, увеличивая потребность в специалистах по веб-дизайну под WordPress. Преимущества WordPress:

  • популярность, востребованность. Многие пользователи знакомы с ней, и им не сложно работать в рамках данной платформы;
  • удобный интерфейс, большой выбор тем для оформления, плагинов, вариантов языкового оформления, каталогов и т.д.;
  • имеется редактор WYSIWYG, способный оказать существенную помощь для тех, кто не владеет языками веб-программирования;
  • очень простая в использовании админ-панель, из которой можно производить редактирование PHP и CSS файлов;
  • постоянное развитие. WordPress создали профессиональные разработчики. Они (совместно с тысячами волонтеров-энтузиастов во всем мире) до сих принимают участие в постоянных улучшениях «движка». После каждого релиза CMS становится быстрее, удобнее, безопаснее.

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

Преимущества Drupal:

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

Недостатки Drupal:

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

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

Преимущества Joomla:

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

Недостатки Joomla:

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

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

Основные преимущества:

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

Если свести все достоинства и недостатки к ряду общих характеристик, то получаются следующие выводы:

1. Универсальность.

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

Drupal подойдет для сайтов с большой базой данных: форумы, интернет-магазины, корпоративные сайты и блоги.

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

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

OpenCart хорошо справится с любым web-проектом: лэндинг, интернет-магазин, корпоративный сайт, но главная специализация – интернет-магазины.

2. Скорость загрузки страниц.

Скорость загрузки во многом зависит и от структуры и от наполнения сайта, но важны и параметры самой CMS. Рейтинг выстроен в порядке возрастания качества характеристики [35].

По скорости загрузки на последних местах Joomla и Drupal.

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