
- •Web – программирование
- •Глава 2. Проектирование и разработка сайтов……………………………45
- •Глава 3. Информационноый обмен в Веб…………………………………..85
- •Глава 4. Язык JavaScript…………………………………………………..….176
- •Глава 5. Язык серверных скриптов php……………………………………270
- •Глава 6. Лабораторные работы…………………………………………...…358
- •Введениев Интернет Коротко об истории Интернет
- •Как работает Интернет?
- •Система адресации в Интернет
- •Способы подключения к сети Интернет
- •Сервисы Интернет
- •Электронная почта
- •Передача файлов по ftp
- •Всемирная паутина www
- •Коротко о компьютерных сетях, входящих в Интернет
- •Локальные сети
- •Распределенная сеть (wan) и глобальные сети
- •Сеть vpn
- •Компьютерные игры
- •Задания по теме “Введение в Интернет”
- •Глава 1. Протоколы Интернет Адресация в компьютерных сетях
- •Ip адрес в компьютерных сетях Ethernet и Интернет
- •Понятие и краткое описание протоколов
- •Соотношение между tcp/ip и osi/iso
- •Межсетевой протокол ip
- •Транспортный протокол tcp
- •Флаги (управляющие биты) Это поле содержит 6 битовых флагов:
- •Протокол дэйтаграмм udp
- •Ip-маршрутизация
- •Протоколы arp и rarp
- •Протоколы сетевого уровня
- •Протоколы электронной почты
- •Протокол smtp
- •Протокол pop3
- •Протокол imap4
- •Спецификация mime
- •Проблемы с кодировкой
- •Протокол ftp
- •Http – Протокол передачи гипертекстов
- •Транзакции http
- •Клиентские методы http
- •Что возвращается обратно: коды ответа сервера
- •Заголовки http
- •Развитие прикладных протоколов
- •Безопасность в сети
- •Протокол ssl
- •Анонимный обмен ключами
- •Обмен ключами при использовании rsa и аутентификация
- •Протокол записи (Record Layer)
- •Как работает ssl
- •Шифрование данных
- •Хэширование
- •Установление подлинности участников
- •Предупреждения системы безопасности web-браузера.
- •Реализация ssl
- •Задания по теме «Протоколы Интернет»
- •Глава 2. Проектирование и разработка сайтов
- •Виды сайтов
- •Этапы проектирования и разработки сайта
- •Модели проектирования
- •Спиральная модель
- •Microsoft Solutions Framework (msf)
- •Управление проектами
- •Веб – дизайн и разработка сайтов
- •Логическое проектирование дизайна сайта
- •Главная страница сайта
- •Внутренние страницы сайта
- •Краткий обзор основных технологий разработки Веб приложений
- •Язык разметки гипертекста html
- •Язык xml
- •Правильно построенные и действительные документы xml
- •Синтаксис xml
- •Объявление xml
- •Корневой элемент
- •Комментарий
- •Спецсимволы
- •Сильные и слабые стороны
- •Отображение xml во Всемирной паутине
- •Применение стилей css.
- •Применение xsl.
- •Словари xml
- •Как выглядит xml-документ?
- •Правила создания xml- документа
- •Конструкции языка
- •Элементы данных
- •Комментарии
- •Атрибуты
- •Cпециальные символы.
- •Директивы анализатора.
- •Adobe Flash и Adobe Flex
- •Вставка флэш в страницу
- •Язык ActionScript
- •Видео-аудио проигрыватели
- •Язык программирования клиентских скриптов JavaScript
- •Технология «клиент-сервер» cgi
- •Программирование для серверов
- •Язык программирования Perl
- •Язык Java на клиентской и серверной странице
- •Сжатие изображений с помощью фракталов
- •Глава 3. Информационноый обмен в Веб
- •Язык разметки гипертекста html
- •©2012 Romanchik Valery
- •Формы html
- •Новые элементы html5
- •Email Inputs
- •Placeholders
- •Вопросы и задания
- •Задания для выполнения
- •Каскадные таблицы стилей css
- •Свойство шрифтов font позволяет задать одну или несколько характеристик шрифта: font-family| font-style | font-variant | font-weight| font-size
- •Заголовок1 Заголовок2 Заголовок3
- •Свойства текста.
- •Цвет и фон.
- •Некоторые подсказки по синтаксису css:
- •1. Свойства шрифтов.
- •2. Свойства текста.
- •3. Свойства цвета и фона.
- •4. Свойства рамки.
- •5. Свойства списков.
- •6. Свойства изображений.
- •Форматирование блока
- •Форматирование псевдоклассов и псевдоэлементов
- •Единицы измерения в css
- •Новое в css3
- •Валидация css
- •Глава 4. ЯзыкJavaScript Введение
- •Включение скриптов JavaScript в html-код
- •Создание простых сценариев
- •Комментарии. Скрытие сценариев от браузеров
- •Отладка скриптов. Ввод и вывод данных
- •Описание языка Типы данных
- •Преобразование типа
- •Специальные числа
- •Булев тип
- •Переменные типа Undefined и Null
- •Массивы
- •Операторы и выражения
- •Оператор with
- •Оператор switch
- •Метод eval()
- •Функции
- •Передача параметров по значению и по ссылке
- •Глобальные и локальные переменные
- •Модель событий
- •Ключевое слово this
- •Перехват события.
- •Исключения: throw/catch/finally
- •Объектная модель
- •Пользовательские объекты
- •Прототипы
- •Хеш-таблицы в JavaScript
- •Встроенные объекты String, Array, Date, Math Объект String
- •Объект Array
- •Объект Number (Число)
- •Объект Date (Дата)
- •Методы объекта Date
- •Объект Function (Функция)
- •Свойства:
- •Методы :
- •Шаблоны и регулярные выражения.
- •Объекты браузера
- •Объект window
- •Методы объекта window
- •Свойства окна, передаваемые методу open
- •Свойства и методы объекта navigator
- •Свойства объекта screen
- •Свойства и методы объекта history
- •Свойства и методы объекта document
- •Коллекции и подчиненные объекты объекта document Обращение к элементам страницы
- •Свойства и методы объекта location
- •Свойства и методы объекта style
- •Объект layer
- •Свойства объекта layer
- •Методы объекта layer
- •Document Object Model (dom)
- •Навигация по дереву документа
- •Создание новых узлов
- •Добавление узлов в документ
- •Копирование: метод cloneNode()
- •Удаление и замена узлов в документе
- •Использование каскадных таблиц стилей в dom
- •Свойство элемента innerHtml и outerHtml
- •Работа с атрибутами элементов
- •Метод removeAttribute()
- •JavaScript и ajax
- •Модель ajax:
- •Запрос к серверу. Класс xmlHttpRequest
- •Методы класса xmlHttpRequest
- •Свойства класса xmlHttpRequest
- •Создание экземпляра объекта xmlHttpRequest
- •Использование dom
- •Информируйте пользователя
- •Если скрипты отключены
- •Объект FormData
- •Cookies
- •Работа с cookie
- •Синтаксис http заголовка для поля Cookie
- •Дополнительные сведения
- •Способы задания значений cookie
- •Примеры на JavaScript
- •Тестовые вопросы по языку JavaScript
- •Упражнения и задачи поJavaScript
- •Глава 5. Язык серверных скриптов php
- •Возможности php.
- •Инструменты для разработки
- •Как phPработает
- •Типы данных
- •Массивы и инициализация массивов
- •Операции и выражения
- •Операции сравнения
- •Логические операции
- •Строковые операции
- •Операторы управления
- •Функции
- •Рекурсивные функции
- •Аргументы функции
- •Область действия и время жизни переменных
- •Изменяемые (динамические) переменные
- •Внешние библиотечные функции
- •Функции для работы с массивами
- •Функции для работы со строками. Базовые строковые функции
- •Функции для работы с отдельными символами
- •Функции форматных преобразований строк
- •Преобразование строк и файлов к формату html и наоборот
- •Преобразование html в простой текст
- •Преобразование строки к верхнему и нижнему регистру
- •Установка локальных настроек
- •Регулярные выражения
- •Perl-совместимые функции рнр для работы с регулярными выражениями
- •Функции даты и времени
- •Математические функции
- •Объектно-ориентированное программирование в php Основные понятия ооп
- •Классы и Объекты
- •Конструкторы и деструкторы
- •Наследование классов и интерфейсов
- •Магические методы
- •Обработка ошибок
- •Ошибки php и журнал error_reporting
- •Чтение и запись бинарных файлов
- •Работа с каталогами в рнр
- •PhPиMySql
- •MySql– сервер: бд1; бд2; бд3; бд4;
- •Язык запросов sql
- •Операция соединения.
- •Команды sql для создания баз данных и таблиц
- •Phpmyadmin
- •Выборка данных из таблиц бд
- •Работа с MySql (сохранение данных в базе данных).
- •Работа с MySql занесение и получение данных из базы данных
- •Некоторые улучшения в организации работы с данными
- •Передача данных от клиента к серверу и обратно. Протокол http
- •Клиентские методы http
- •Обработка html-форм
- •Передача переменных в скрипт.
- •Передача значений переменных по методу get
- •Передача данных из клиентской формы на сервер по методу get
- •Передача данных из клиентской формы на сервер по методу post
- •Php и различные формы
- •Обработка форм
- •Более сложные переменные формы
- •Глава 6. Лабораторные работы Лабораторная работа №1 (4 часа). Инструменты и средства создания простых сайтов
- •Вопросы по теме:
- •Лабораторная работа №2 Работа с документами .Doc, .Pdf, .Html(4 часа).
- •Лабораторная работа №3. Применение каскадных таблиц стилей css
- •Пример 1. Двухколоночный контейнерный макет сайта с применением css.
- •Пример 2. Трехколоночный контейнерный макет сайта с применением css.
- •Задания для создания сайтов
- •Лабораторная работа №4. Применение каскадных таблиц стилей css
- •Лабораторная работа №5 по JavaScript(4 часа). Динамика на Веб –странице. Включение скриптов JavaScript в html-код
- •1. Выполнить следующие задания на JavaScript:
- •Пример вывода даты и времени на сайте с помощью JavaScript.
- •Пример вывода строки в стиле печатной машинки
- •Лабораторная работа №6 по JavaScript(4 часа). Проверка правильности заполнения формы на сайте
- •Методы объекта window
- •Window.Open()
- •Window.Close()
- •Методы focus() и blur()
- •Лабораторная работа №7. Php Задание 1. Массивы и строки
- •Выполнить одно из перечисленных ниже упражнений
- •Задание 2. Функции
- •Задание 3. Файлы и строки
- •Выполнить одно из перечисленных ниже упражнений
- •Задание 4. Работа с базами данных Выполнить одно из перечисленных ниже упражнений
- •Задание 5. Создание web-объектов Клиентские методы http
- •Обработка html-форм
- •Передача переменных в скрипт.
- •Передача значений переменных по методу get
- •Передача данных из клиентской формы на сервер по методу get
- •Передача данных из клиентской формы на сервер по методу post
- •Список заданий
- •Литература
- •Приложение 1. Программное обеспечение Adobe Dreamweaver
- •Приложение 2. Системы быстрой разработки Веб-приложений и cms
- •Администрирование
- •Установка модуля
- •Создание шаблона в Drupal
- •Создание индивидуальных шаблонов
- •Движок шаблонирования xTemplate
- •Создание нового шаблона
- •Основы создания шаблона
- •Удаление блока с формой входа на сайт
- •Включение блока для отображение популярных статей
- •Удаление ссылки "Далее" в отображение статьи
- •Drupal: практические примеры
- •Часть 1. Введение
- •6 Шагов к тому, чтобы заставить Drupal работать быстрее
- •Приложение 3. Основы cgi/Perl
- •Типы данных
- •Ассоциированные массивы
- •Операторы
- •Подпрограммы
- •Common Gateway Interface
- •Приложение 4. Базы данных и язык sql
- •Реляционные субд Модель данных в реляционных субд
- •Нормализация модели данных
- •Язык sql
- •Команды sql
- •Команды определения структуры данных (DataDefinitionLanguage–ddl)
- •Команды манипулирования данными (Data Manipulation Language – dml)
- •Команды управления транзакциями (TransactionControlLanguage-tcl)
- •Команды управления доступом (DataControlLanguage–dcl)
- •Работа с командами sql Извлечение данных, команда select
- •Ключевое слово distinct
- •Секция from, логическое связывание таблиц
- •Секция where
- •Секция orderby
- •Групповые функции
- •Секция group by
- •Секция having
- •Изменение данных
- •Команда insert
- •Команда delete
- •Команда update
- •Определение структуры данных Команда createtable
- •Команда altertable
- •Курсовая работа №2. Проекты сайтов
- •Курсовая работа №3. Технологии разработки Веб – приложений Проекты сайтов
- •Перечень заданий
6 Шагов к тому, чтобы заставить Drupal работать быстрее
В списке модулей выключите все модули, которые не используются, также стоит пожертвовать модулями статистики;
Кэширование в Drupal снижает нагрузку на базу и значительно увеличивает скорость. Хотя кэш существенен только для анонимных посетителей, на сайтах их как правило большинство, кэш в любом случае рекомендуется включить;
Выключите использование mod_rewrite в .htaccess. URL'ы станут не такими красивыми и короткими, но ведь многие CMS не используют коротких URL;
Модуль locale сильно сказывается на ухудшение скорости работы сайта, но локализация обычно нужна, значит либо адаптируем к работе с gettext и смотрим, стало ли быстрей (в большинстве случаев должно), либо на крайний случай выключаем локализацию интерфейса (крайняя мера);
Темы c XML-шаблонами обычно медленнее тем использующих только PHP, посмотрите, какая тема используется по умолчанию: если это что-то вроде xtemplate или подобное, с шаблоном на XML - смените на тему использующую только php (например, chameleon);
Важной частью увеличения скорости работы Drupal является информация о количестве обращений к базе данных. Ставим модуль devel, включаем отображение запросов и смотрим время их исполнения. Какие-то дополнительные модули могут быть криво написаны, и давать значительные задержки (например, неоптимальные SQL-запросы), в стандартных модулях с этим обычно все в порядке. Пробуйте отключать различные модули (даже стандартные) и смотрите на время генерации страниц. К этому же совету: уменьшаем количество нодов выводимых по умолчанию на главную страницу (это если для главной страницы используется модуль node). Проверяем наличие индексов у таблиц в базе. Также делаем тотальный optimize всех таблиц (и можно делать его регулярно).
Вопрсы настройки
работать следует не с папкой С:\WebServes, а с локальным диском Z или как Вы выбрали L (Диск Z - это виртуальный хостинг Денвера):
Копируем библиотеку php_mbstring.dll в папку Z:\usr\local\php5\ext (скачать соответствующий PHP и из него скопировать эту библиотеку и только так, иначе библиотека может не соответствовать установленному PHP);
Меняем кодировку базы в файле Z/usr/local/mysql5/cnf вместо ср1251 устанавливаем utf8 в строках 28, 40, 41, а в phpMyAdmin устанавливаем ru-utf8 и utf8_general.ci;
Z:/usr/local/php5/php.ini
В строке 255 увеличить время работы скрипта с 30 до 300 max_execution_time = 300 (чтобы не было зависаний, при работе тяжелых модулей);
Проверяем строки, которые необходимо раскомментировать: extension=php_mbstring.dll - работа с уникодом - раскомментируем стр 608 extension=msql.dll раскомментируем строку 578 extension=php_gd2.dll - графическая библиотека стр 601 уже раскомментирована в Денвере3;
Добавляем в файл .HTACCESS в корневой папке (на Денвере это папка www) в самом верху четыре строки: php_value error_reporting 7 php_value memory_limit 32M //но лучше 96М RewriteCond %{HTTP_REFERER} ^http://www\.google\.com/$ RewriteRule .* - [F] где первая строка - отвечает за отображение и сглаживание отдельных ошибок, не влияющих на работу сайта; вторая-за необходимый мин. объем памяти для нормальной работы всех модулей Друпала, во избежание "белого экрана смерти" (без этой строчки можно обойтись, если в файле php.ini есть строка memory_limit=32 или в settings.php прописана строка ini_set(‘memory_limit’,’32M’); третья и четвертая строки-необходимы для нормальной работы поисковых серверов;
Создаем папку translations в папке www/profiles/default, а именно www/profiles/default/translations, в которую размещаем перевод. Эта папка желательна, но не обязательна, можно хранить перевод и на жестком диске компьютера;
вопросы, на которые должен отвечать каждый Drupal-разработчик:
Модули
Из чего состоит модуль?1
Что такое .info файлы?
Как добавлять стили и JS-код в модуль?
Что такое хуки?
Как добавить свою страницу в систему меню Друпала?
Как переопределить вывод на существующей странице сайта?
Что такое Forms API?
Как изменить произвольную форму созданную другим модулем?
Как добавить к этой форме свою проверку и свой обработчик?
Как добавить на сайт свой блок из модуля?
Как сделать чтобы у этого блока были собственные настройки?
Как выполнять дополнительные действия при сохранении ноды?
Как отображать свои данные на страницах нод?
Темизация
Как работает регистр темизации?
Как переопределить стандартный шаблон в теме?
Как темизировать вывод в модулях?
Как вводить новые шаблоны?
Как работают базовые темы?
Код
Какие правила кодирования используются при разработке Друпал-проектов?
Как работать с SVN и CVS?
Как создавать и применять патчи?
Какие проблемы существуют при выкладывании проектов на живой сервер?
Какой код можно считать безопасным и какие есть методы обеспечения безопасности в Друпале?
Как реализовывать unit-тесты в Друпале?
Денвер и Drupal
Шаг 1. Денвер
Для того, чтобы запустить Drupal на домашнем компьютере, понадобиться отдельная программа, которая позволит это делать. Одна из таких программ — Денвер. Денвер — это программый комплекс, позволяющий превратить ваш локальный компьютер в сервер. Название расшифровывается как «джентльменский набор веб-разработчика». Скачайте с сайта Денвера его дистрибутив и запустите. Откроется окно браузера, а после его закрытия появиться следующее окно:
Шаг 2. Папка
После установки Денвера, нужно сделать папку в которой будут храниться файлы сайта. Для этого зайдите в папку, в которой установлен Денвер, если вы её не меняли, то это C:\WebServers. Она выглядит следующим образом:
Далее перейдите в папку home и сделайте в ней папку для файлов сайта. В этом примере была сделана папка drupal.site:
Войдите в папку drupal.site и сделайте в ней папку с названием www:
И уже в папку www распакуйте файлы Drupal:
Если всё это делаете в первый раз, то чтобы не ошибиться что в какой папке делать, обращайте внимание на адресную строку на картинках — в ней можно увидеть текущее местонахождение.
Шаг 3. База данных
По умолчанию, Drupal работает с базой данных MySQL. Эта база данных входит в комплект Денвера и для работы с ней нужно запустить Денвер. Найдите ярлыки которые Денвер создал на Рабочем столе и запустите Start servers. На экране появятся и исчезнут два окошка, после этого запустите браузер и наберите в адресной строке:
localhost
и используйте манипулятор типа мышь, чтобы нажать им на кнопку Перейти в браузере. Открывшуюся страницу нужно прокрутить до раздела Утилиты, в котором перейдите по ссылке Заведение новых БД и пользователей MySQL.
После перехода по ссылке, заполните окрывшуюся страницу следующим образом:
Пароль администратора MySQL: <оставьте пустым>
Имя базы данных: drupalsite
Логин пользователя: drupalsite
Пароль: drupalsite
…еще раз: drupalsite
После ввода этих данных, нажмите кнопку Создать БД и пользователя.
Страница перезагрузится и после заголовка появится надпись: База данных и новый пользователь заведены:
Теперь у вас есть база данных с названием drupalsite, для доступа к базе будет использоваться логин и пароль drupalsite.
Шаг 4. Установка Drupal
Поледний шаг — это установка самого Drupal. Здесь будет описана установка Drupal с включённым в дистрибутив русским языком. Наберите в адресной строке браузера:
drupal.site
нажмите кнопку перехода и вы увидите страницу с предложением выбрать язык на котором и будет проходить дальнейшая установка. Выберите Russian (Русский) и нажмите кнопку Select language.
На следующей странице Drupal попросит создать файл settings.php в папке /sites/default. Этот файл нужно создать из файла default.settings.php. Нужно именно создать новый файл, а не переименовать существующий. После этого в этой папке у вас должно быть два файла: default.settings.php и settings.php. Нажмите ссылку обновите страницу в последней строке.
На следующей странице введите информацию о базе данных (название, пользователя и пароль) и нажмите кнопку Сохранить. Секция Расширенные настройки не понадобится.
Откроется и вскоре исчезнет страница Установка Drupal, во время которой Drupal внесёт изменения в файл settings.php.
Следующая страница будет находится на экране дольше. Вы увидите процесс импорта переводов интерфейса. На общих хостингах с небольшими ресурсами именно эта операция проходит не полностью, т.к. установленного ограничения на время выполнения скрипта не хватает на импорт переводов.
После того, как переводы будут импортированы, нужно ввести общую информацию о сайте (название, почтовый адрес, часовой пояс, поддержка чистых ссылок, оповещения) и информацию об аккаунте администратора.
На следующей странице будет проведена установка языка.
На последней странице установки Drupal сообщит о её завершении и предложит войти в аккаунт. Нажмите ссылку войти в свой аккаунт.
Вы окажетесь в аккаунте администратора. На странице будет находиться сообщение, которое выводится на первую страницу сайта в том случае, когда нет не одного документа выведенного на первую страницу. Теперь сделайте то, что обычно не делают: прочитайте эту страницу.
Отметьте:
после установки удалять файл install.php нет необходимости, т.к. в install.php есть Verify existing settings.php и установка запуститься только в том случае, если файл settings.php содержит записи совпадающие с default.settings.php.
однако если хотите, вы можете удалить как install.php, так и все файлы с расширением txt: CHANGELOG.txt, COPYRIGHT.txt, INSTALL.txt, INSTALL.mysql.txt, INSTALL.pgsql.txt, LICENSE.txt, MAINTAINERS.txt, UPGRADE.txt.
Комментарии
Нажмите кнопку «Да». После этого появиться окно с процессом распаковки файлов. Когда файлы будут распакованы, то следующее окно будет таким:
Денвер проверит наличие необходимых компонентов, убедится что всё на месте и предложит нажать Enter для продолжения. Нажимаете Enter и появляется следующее окно:
На этом шаге предлагается выбрать папку в которую будет установлен Денвер. Можете выбрать то название, которое вам больше нравиться. Если устраивает C:\WebServer, то нажимаете Enter. Здесь нужно подтвердить свой выбор. Нужно ввести y и нажать Enter.
Денвер предупредит о создании виртуального диска. После нажатия Enter появится следующее окно:
Здесь нужно ввести букву виртуального диска. По умолчанию Денвер предлагает ввести Z и если у вас нет причин выбирать другую букву, то введите z и нажмите Enter.
Денвер сделает на диске указанную папку и предупредит о начале копирования файлов. После нажатия Enter, в окне пробежит строка копирующихся файлов:
Затем будет выведено следующее сообщение:
На этом шаге потребуется выбрать режим запуска Денвера. Прочитайте пояснения к режимам и выберите удобный для вас 1 или 2. После выбора режима запуска, Денвер спросит нужно ли создавать на Рабочем столе ярлыки, введите y и нажмите Enter. Окно установки закроется, а в браузере откроется информационная страница. На этом процедура установки Денвера закончена.
WordPress
WordPress — CMS с открытым исходным кодом, распространяемая под GNU GPL. Написан на PHP, в качестве базы данных использует MySQL. Сфера применения — от блогов до достаточно сложных новостных ресурсов и даже интернет-магазинов. Встроенная система «тем» и «плагинов» вместе с удачной архитектурой позволяет конструировать практически любые проекты.
На 2007 год WordPress — самая популярная система для ведения автономных блогов.
возможность публикации с помощью сторонних программ и сервисов;
простота установки, настройки;
поддержка RSS, Atom, trackback, pingback;
подключаемые модули (плагины) с уникальной простой системой их взаимодействия с кодом;
поддержка так называемых «тем», позволяющих легко менять как внешний вид, так и способы вывода данных;
«темы» реализованы как наборы файлов-шаблонов на PHP, что положительно сказывается на скорости и гибкости;
громадные библиотеки «тем» и «плагинов»;
заложенный потенциал архитектуры позволяет легко реализовывать сложные решения;
человеко-понятный URL;
Joomla
Joomla! (произносится джу́мла) — система управления содержимым, написанная на языках PHP и JavaScript, использующая в качестве хранилища базу данных MySQL. Является свободным программным обеспечением, распространяемым под лицензией GNU GPL.
В настоящее время актуальна версия 1.5. В разработке находится версия 1.6. К лету 2008 года по числу ежедневных скачиваний Joomla! заняла второе место после WordPress со значительным отрывом от других подобных систем.[3]
CMS Joomla! включает в себя различные инструменты для изготовления веб-сайта. Важной особенностью системы является минимальный набор инструментов при начальной установке, который дополняется по мере необходимости. Это снижает загромождение административной панели ненужными элементами, а также снижает нагрузку на сервер и экономит место на хостинге.
Joomla! позволяет отображать интерфейс фронтальной и административной части на любом языке. Каталог расширений содержит множество языковых пакетов
Основные возможности
Функциональность можно расширять с помощью дополнительных модулей (расширений, плагинов).
Модуль безопасности для многоуровневой аутентификации пользователей и администраторов.
Система шаблонов позволяет легко изменять внешний вид сайта.
Настраиваемые схемы расположения модулей, включая левый, правый и центральный блоки меню.
К преимуществам системы можно отнести то, что все модули, компоненты, плагины, шаблоны можно написать самому, разместить их в структурированном каталоге расширений или отредактировать существующее расширение по своему усмотрению.
Возможности администрирования
Для каждой динамической страницы можно создать своё описание и ключевые слова в целях повышения рейтинга в поисковых системах;
Начало и окончание публикации любых материалов можно запрограммировать по календарю;
Возможность ограничить доступ к определённым разделам сайта только для зарегистрированных пользователей;
Настраиваемые схемы расположения элементов по областям шаблона
Различные модули (последние новости, счётчик посещений, подробная статистика посещений, гостевая книга, форум и другие);
Возможность создания не одной, а нескольких форм обратной связи для каждого контакта;
Модуль приёма от удалённых авторов новостей, статей и ссылок;
Иерархия объектов;
Менеджер рассылки новостей. Поддержка более чем 360 служб рассылки новостей по всему миру;
Встроенный визуальный редактор TinyMCE;
ЧПУ — «человекопонятный URL»;
Минимальные системные требования
Для работы Joomla требуются:
Apache 1.3.x или новее.
Для версии 1.6 будут требоваться, как минимум, PHP 5.2 и MySQL 5.0.4.[7]
Литература
Томас Захреддин Drupal 6 = Das Drupal 6 Praxisbuch. — М.: «Эксмо», 2008. — С. 432. — ISBN 978-5-699-36219-6
Джон Вандюк, Мэтт Вестгейт «CMS Drupal: руководство по разработке системы управления сайтом», 400 стр., с ил.; ISBN 978-5-8459-1356-2, ISBN 978-1-5905-9755-2
Джон Вандюк (2-е издание) «CMS Drupal 6: руководство по разработке системы управления сайтом», 576 стр., с ил.; ISBN 978-5-8459-1513-9, ISBN 978-1-43-020989-8
Дэвид Мерсер Drupal 6. Создание надежных и полнофункциональных веб-сайтов, блогов, форумов, порталов и сайтов-сообществ = Building powerful and robust websites with Drupal 6: Build your own professional blog, forum, portal or community website with Drupal 6. — М.: «Вильямс», 2009. — С. 272. — ISBN 978-5-8459-1556-6
Джон Вандюк CMS Drupal 6: система для создания сайтов и управления ими = Pro Drupal Development. — 2-е. — М.: «Вильямс», 2009. — С. 576. — ISBN 978-5-8459-1513-9
В.Ромашов, М. Рысевец CMS Drupal: система управления содержимым сайта. — «Питер», 2009. — С. 288. — ISBN 978-5-49807-241-8
Robert T. Douglass, Mike Little, Jared W. Smith «Building Online Communities with Drupal, phpBB, and WordPress». Apress, ISBN 1-59059-562-9
David Mercer «Drupal: Creating Blogs, Forums, Portals, and Community Websites», ISBN 1-904811-80-9
John K. VanDyk, Matt Westgate «Pro Drupal Development», ISBN 9781590597552
Matt Butcher «Learning Drupal 6 Module Development», ISBN 978-1-847194-44-2
Колисниченко Денис Николаевич Joomla! 1.5. Руководство пользователя. — М.: «Диалектика», 2009. — С. 224. — ISBN 978-5-8459-1509-2
Хаген Граф Создание веб-сайтов с помощью Joomla! 1.5 = Building Websites with Joomla! 1.5. — М.: «Вильямс», 2009. — С. 304. — ISBN 978-5-8459-1506-1
Бэрри Норт Joomla! Практическое руководство = Building a Cuccessful Joomla! Powered Website. — М.: «Символ-Плюс, 2008. — С. 448. — ISBN 978-5-93286-117-2
Дэн Рамел Joomla! Самоучитель = Beginning Joomla! From Novice to Professional. — Санкт-Петербург: «БХВ-Петербург, 2008. — С. 448. — ISBN 978-5-9775-0285-6
Joomla! (англ.). Open Source Matters, Inc.. — Официальный сайт Joomla. Joomla в DMOZ
Joomla! CMS по-русски (рус.). Joomlaportal.ru. — Официальный сайт Joomla Russian Translation Community.