Электронная библиотека книг Александра Фролова и Григория Фролова.
 
Библиотека
Братьев
Фроловых
Электронная библиотека книг Александра Фролова и Григория Фролова.
Библиотека системного программиста
Программирование на JAVA
ПК. Шаг за шагом
Другие книги
Восстановление данных
Антивирусная защита
Статьи для
программистов
Пользователю компьютера
Практика применения Perl, PHP, Apache, MySQL для активных Web-сайтов

Оглавление

Книга посвящена созданию активных Web-приложений, предназначенных для работы на платформе операционных систем Linux и Microsoft Windows. Читатель научится создавать как относительно простые Web-узлы для небольших компаний, так и сложные приложения, интегрированные с базами данных и почтовыми серверами.
Здесь описаны стенд разработки Web-приложений, особенности установки и настройки Linux, а также популярного Web-сервера Apache, рассмотрены процесс создания программ CGI на языке Perl и сценариев PHP, методики интеграции этих приложений с СУБД MySQL.
В основу книги положен опыт, полученный авторами при разработке различных Интернет-проектов, в том числа узла Web службы восстановления данных, узла виртуального кадрового агентства Трудоголик.Ру, созданного специально для этой книги и других проектов.
Книга адресована тем, кто уже умеет создавать документы HTML и в целом знаком с принципами работы серверов Web, а также тем, кто желает быстро освоить профессиональные приемы создания активных Web-узлов на платформе Linux и Microsoft Windows. Кроме того, она полезна всем, кому интересно практическое применение современных Интернет-технологий.

Авторы: А.В. Фролов, Г.В. Фролов
Страниц: 534
ISBN: 5-7502-0206-2
Дата выхода: 2002 г.

Книга вышла в издательстве Русская Редакция

Оглавление

  • Введение . XV
    • Как появилась ОС Linux . XV
    • Основные дистрибутивы Linux . XVI
    • Преимущества и недостатки Linux XIX
      • О бесплатности Linux . XIX
      • Сопровождение Linux XX
      • Предварительная установка Linux на новые компьютеры . XXI
      • Приложения для Linux . .XXII
      • Linux и настольные персональные компьютеры . .XXII
      • Открытость Linux . . XXIV
    • Linux как платформа для приложений Интернета .XXV
      • Сетевые средства Linux . .XXV
      • Web_серверы XXVII
        • CERN HTTPD . XXVII
        • NCSA HTTPd XXVII
        • Apache XXVIII
        • Web_сервер THTTPD . XXIX
      • FTP_серверы . XXIX
      • Серверы электронной почты . . .XXX
      • Базы данных . .XXX
      • Инструментальные средства и кросс_разработка
      • Web_приложений . XXXII
    • На кого ориентирована эта книга . XXXV
    • Проекты, на базе которых создана эта книга . XXXV
      • Узел Web службы восстановления данных
      • DataRecovery.Ru XXXV
      • Виртуальное кадровое агентство Трудоголик.Ру XXXVII
      • Узел Web симпозиума "Сердечно_сосудистая
      • и интервенционная радиология" XXXVIII
    • Содержание книги . XXXIX
    • Благодарности . . .XL
    • Об авторах .XL
  • Глава 1 Стенд для создания Web-приложений . 1
    • Простейший стенд . .2
      • Аппаратные средства . .3
        • Центральный процессор . .3
        • Оперативная память .4
        • Жесткий диск . .4
        • Сканер и цифровой фотоаппарат . . .4
        • Принтер .5
        • Модем . . .6
        • Выделенная линия . . .6
        • Спутниковый Интернет . .8
        • Устройство бесперебойного питания . .9
        • Заземление компьютерного оборудования . .9
      • Программные средства . . 10
        • Выбор операционной системы 10
        • Выбор инструментальных средств разработки
        • Web_приложений 10
        • Подготовка исходных текстовых и графических материалов 11
        • Подготовка страниц HTML 12
        • Создание программных расширений сервера Web . 12
        • Подготовка Web_приложений для Linux в среде Microsoft
        • Windows . 13
    • Стенд из двух компьютеров . 14
      • Аппаратные средства 15
        • Локальная сеть Web_студии . . 15
        • Подключение к Интернету . 16
      • Программные средства . . 16
    • Стенд для разработки сложных Web_приложений . 17
      • Рабочая станция Web_дизайнера . 18
      • Рабочая станция Web_программиста . 19
      • Сервер разработки Web_приложений . . 19
      • Сервер отладки Web_приложений . 20
      • Сервер макетов Web_приложений . 20
      • Подключение к Интернету 20
    • Защита от вирусов и атак хакеров . 21
      • Установка антивирусных программ 21
      • Установка брандмауэра . . 22
  • Глава 2 Установка RedHat Linux . 25
    • Подготовка к установке . 25
      • Определение числа операционных систем на сервере . 25
        • Одновариантная загрузка 26
        • Многовариантная загрузка . 26
      • Размещение операционных систем на дисках . 26
        • Выделение диска для установки Linux 27
        • Установка нескольких ОС на одном диске 28
      • Определение конфигурации аппаратных средств . 30
    • Предварительная установка Microsoft Windows . 31
    • Мастер установки RedHat Linux . . 32
      • Запуск мастера установки . 32
      • Выбор типа установки . 33
      • Создание разделов диска 34
      • Установка программы управления загрузкой LILO . 36
      • Настройка параметров TCP/IP 37
      • Настройка брандмауэра . 38
      • Выбор временной зоны . . 39
      • Выбор национального языка . 39
      • Создание учетных записей . 40
      • Конфигурирование системы аутентификации пользователей . 41
      • Выбор устанавливаемых компонентов ОС . 42
      • Конфигурирование графического интерфейса 43
      • Копирование дистрибутивных файлов . 43
      • Создание загрузочной дискеты . . 43
      • Завершение установки . . 44
    • Настройка менеджера загрузки Microsoft Windows 45
      • Файл boot.ini . . 45
      • Добавление ОС Linux в список загрузки . 45
      • Копирование содержимого первого сектора корневого раздела
      • Linux . 46
        • Копирование средствами Microsoft Windows 46
        • Копирование средствами Linux . 50
    • Удаленное администрирование Linux . 51
  • Глава 3 Установка и настройка Web-сервера Apache . 55
    • Краткая история создания Web_сервера Apache . 55
    • Установка Web_сервера Apache . . 57
    • Конфигурационные файлы Apache . . 61
      • Расположение и состав конфигурационных файлов 62
      • Каталоги документов и программ Web_сервера Apache . 65
        • Каталоги Apache в RedHat Linux . 66
        • Каталоги Apache в Microsoft Windows 66
    • Проверка работоспособности Web_сервера 67
    • Управление Web_сервером Apache 68
      • Запуск сервера Apache . 68
      • Останов сервера Apache . 69
      • Перезапуск сервера Apache . . 69
      • Просмотр журналов . 70
        • Журнал ошибок error.log . 70
        • Журнал доступа к Web_серверу access.log . 71
      • Редактирование конфигурационных файлов . 72
    • Настройка основных параметров сервера Apache . . 74
      • Доменное имя Web_узла . 74
      • Адрес IP Web_узла . . 75
      • Номер порта TCP/IP 75
      • Расположение каталогов с документами HTML 76
      • Расположение каталогов с программами CGI 77
    • Создание виртуальных Web_узлов 79
      • Использование одного IP для виртуальных Web_узлов . 80
        • Исходные данные для примера . 80
        • Создание зон DNS для доменов виртуальных Web_узлов 80
        • Настройка файла httpd.conf 81
        • Адрес IP виртуального Web_узла 82
        • Доменное имя виртуального Web_узла 82
        • Расположение каталога документов HTML 82
        • Адрес E_Mail администратора виртуального
        • Web_узла . 83
        • Отдельные файлы журналов 83
        • Имя главного документа HTML . 83
        • Виртуальный каталог программ CGI 84
        • Конфигурирование главного Web_узла . 84
      • Использование разных IP для виртуальных Web_узлов . 88
        • Исходные данные для примера . 89
        • Создание зон DNS для доменов виртуальных Web_узлов 89
        • Настройка файла httpd.conf 89
      • Комбинированный способ . 91
        • Исходные данные для примера . 91
        • Создание зон DNS для доменов виртуальных Web_узлов 92
        • Настройка файла httpd.conf 92
      • Использование разных портов IP 93
      • Доменные псевдонимы 95
    • Управление доступом к страницам Web_узла . . 96
      • Команда <Directory> . . 96
      • Команда <File> . 97
      • Команда <Location> . . 97
      • Ограничение доступа посетителей Web_узла к каталогу 98
      • Ограничение доступа к каталогам программ CGI . 99
      • Файлы .htaccess 100
        • Обработка файлов .htaccess . 101
        • Аргументы команды AllowOverride 102
      • Парольный доступ к страницам Web_узла . 103
        • Базовая аутентификация 104
          • Создание файла идентификаторов и паролей . 104
            • Проверка имени файла управления доступом . 105
            • Подключение файла управления доступом . 105
            • Подготовка файла управления доступом . 106
        • Аутентификация типа Digest 107
            • Подключение модуля mod_auth_digest 107
            • Создание файла идентификаторов и паролей . 107
            • Подключение файла управления доступом . 108
            • Подготовка файла управления доступом . 108
      • Дополнительные возможности сервера Apache . 108
        • Просмотр содержимого каталогов Web_узла 108
        • Автоматический выбор национального языка для документов . 113
          • Согласование содержимого по именам документов . 115
          • Использование команд AddLanguage и AddCharset 116
          • Настройка браузера посетителя . 118
      • Использование программы Apache Configuration . 120
        • Преимущества и недостатки Apache Configuration . 120
        • Создание виртуального Web_узла при помощи
        • Apache Configuration . 120
  • Глава 4 Краткое введение в CGI 127
    • Пассивные и активные Web_серверы . 127
      • Статические страницы . 128
      • Динамические страницы . 129
      • Технологии создания Web_приложений . 130
        • Программы CGI . . 131
        • Приложения ISAPI . 133
          • Расширения ISAPI . 133
          • Фильтры ISAPI . . 134
        • Приложения ASP . 134
        • Приложения PHP . 135
    • Подготовка форм HTML . . 135
      • Пример простейшей формы 136
      • Параметры тега <FORM> 137
      • Элементы управления формы . . 139
        • Тег <INPUT> . 139
        • Тег <TEXTAREA> . . 141
        • Тег <SELECT> . 142
      • Пример документа HTML с формой 142
        • Указание параметров тега <FORM> . 144
        • Однострочное поле ввода . 145
        • Поле ввода пароля . . 145
        • Поле ввода многострочного текста . 145
        • Флажки с независимой фиксацией 145
        • Флажки с зависимой фиксацией . . 146
        • Списки текстовых строк 146
        • Скрытый элемент управления . 146
        • Кнопки типа SUBMIT и RESET . 147
    • Передача данных программе CGI . . 147
        • Метод GET . 147
        • Метод POST 148
        • Выбор между GET и POST 149
      • Передача ответа из программы CGI . 149
      • Переменные среды для программы CGI . 150
  • Глава 5 Создание программ CGI на языке Perl . . 155
    • Установка интерпретатора Perl . 156
      • Установка в RedHat Linux . . 156
      • Установка в Microsoft Windows . 157
      • Установка дополнительных модулей Perl . 162
        • Загрузка дистрибутива с Web_узла CPAN 163
        • Утилита PPM для Microsoft Windows 164
        • Утилита CPAN для Linux 165
      • Настройка конфигурации Apache . 166
    • Создание виртуального каталога программ CGI 167
      • Определение виртуального каталога программ CGI . 168
      • Права доступа к каталогу программ CGI . . 168
      • Права доступа к файлам программ CGI . 169
    • Создание простейшей программы CGI . 170
      • Параметры виртуального Web_узла . 170
      • Документ HTML со ссылкой на программу CGI . 171
      • Исходный текст программы CGI . . 172
    • Просмотр переменных окружения . 173
    • Обработка формы . 177
      • Извлечение содержимого текстовых полей формы 181
      • Обработка флажков с независимой фиксацией 181
      • Обработка флажков с зависимой фиксацией 182
      • Обработка списка . . 182
      • Обработка данных от графической кнопки 183
    • Программа AREF 184
    • Применение шаблонов HTML . 186
      • Шаблоны переменных 187
      • Циклические шаблоны . 190
      • Условные шаблоны . 193
    • Работа с Cookie в программах CGI . 196
      • Заголовок HTTP для создания Cookie 198
      • Запись Cookie программой CGI . 200
      • Получение значения Cookie . . 200
      • Изменение значения параметра Cookie 201
      • Удаление Cookie . 201
      • Ограничения на использование Cookie 201
    • Обмен данными с сервером электронной почты 202
      • Протокол SMTP . 203
      • Протокол POP3 . . 206
      • Протокол IMAP . . 209
    • Внутренняя структура электронного сообщения 210
      • Заголовок сообщения . 211
      • Тело сообщения . 213
      • Наборы символов и кодировка сообщения . 214
      • Присоединенный файл 216
    • Отправка данных из формы по электронной почте 218
    • Исходный текст программы urgent_mail.pl 219
      • Функция win2koi . 220
      • Функция send_mail . 221
      • Обработка формы HTML . 222
    • Получение электронной почты . 224
      • Использование модуля Net::POP3 . 225
      • Использование модуля Mail::POP3Client 230
  • Глава 6 Знакомство с СУБД MySQL . 235
    • Ограничения MySQL . . 236
    • Установка и администрирование MySQL . 237
      • Установка в среде Linux 237
      • Установка в среде Microsoft Windows . 239
      • Запуск MySQL . 242
      • Управление работой MySQL . . 244
      • Базовая настройка учетных записей MySQL 245
        • Назначение пароля для пользователя
        • с идентификатором root . 245
        • Создание новых учетных записей 246
        • Управление правами пользователей . 246
        • Удаление учетных записей пользователей . 247
    • Создание баз данных и таблиц . 247
      • Создание базы данных . . 248
      • Удаление базы данных . . 248
      • Создание таблицы . . 248
      • Удаление таблицы . . 248
    • Программа MySQL_Front . . 249
      • Запуск программы и подключение к базе данных 249
      • Создание базы данных . . 251
      • Удаление базы данных . . 251
      • Создание таблицы . . 251
      • Удаление таблицы . . 252
      • Просмотр и изменение содержимого таблицы . 252
      • Сохранение описания и содержимого таблицы 253
      • Импорт текстовых данных в таблицу . 255
  • Глава 7 Базы данных и Perl 257
    • Знакомство с интерфейсом DBI . . 257
      • Драйвер DBD 258
      • Модуль DBI . 259
    • Использование DBI . 259
      • Открытие соединения с базой данных . 260
        • Указание драйвера базы данных и источника данных . 261
        • Задание идентификатора пользователя и пароля . 262
        • Выбор способа обработки ошибок . 262
        • Дескриптор соединения . 263
      • Выдача команд . 263
        • Простые команды . 263
        • Предварительная подготовка команд 264
        • Выполнение заранее подготовленных команд 264
        • Привязка параметров . 265
        • Команда SELECT . 266
      • Обработка ошибок DBI в Web_приложениях 267
        • Режимы обработки ошибок . 267
        • X Практика применения PERL, PHP, APACHE и MySQL для активных Web-сайтов
        • Определение причины ошибки 268
      • Закрытие соединения 268
    • Пакет Trudogolik . . 269
    • Структура пакета . . 269
    • Глобальные переменные . . 270
    • Функции для работы с DBI . 271
      • DB_OPEN 271
      • DB_CLOSE . 272
      • DB_SQL_DO . 272
      • DB_SQL_PREPARE 273
      • DB_SQL_BIND . 273
      • DB_SQL_EXECUTE . 274
      • DB_SQL_FETCHROW_ARRAY 274
      • DB_ERROR . . 274
    • Пример вызова функций . 275
      • Удаление всех записей из таблицы . 276
      • Обработка исходного файла списка участников 276
      • Цикл обработки записей 277
      • Вывод содержимого таблицы для контроля 278
      • Обработка ошибок . . 279
    • Использование модуля Win32::ODBC . . 279
      • Открытие соединения с базой данных . 280
      • Выдача команды SQL 280
      • Получение результата выполнения команды SELECT . 281
      • Закрытие соединения с базой данных . 281
  • Глава 8 Кадровое агентство Трудоголик.Ру . 283
    • База данных кадрового агентства . 285
      • Таблица зарегистрированных клиентов . 286
      • Таблица администраторов агентства . . 287
      • Таблица названий городов . . 287
      • Образование . 288
      • График работы . 288
      • Список профессий . 289
      • Разделы каталога профессий . 289
      • Резюме 290
      • Вакансии . . 291
    • Узел www.trudogolik.ru 293
      • Регистрация посетителей . 294
        • Выбор идентификатора и пароля . . 294
        • Интерфейс регистрации в агентстве Трудоголик.Ру 295
        • Программная реализация . 297
      • Добавление вакансии . 306
        • Пользовательский интерфейс . 306
        • Программная реализация . 309
          • Программа формирования формы ввода сведений
          • о вакансии . 309
          • Шаблон формы сведений о вакансии . 312
          • Программа обработки данных формы 317
      • Добавление резюме . . 323
        • Пользовательский интерфейс . 323
        • Программная реализация . 324
      • Поиск вакансий 326
        • Пользовательский интерфейс . 326
        • Программная реализация . 329
          • Отображение формы поиска . 329
          • Шаблон формы поиска . 331
          • Получение результатов запроса 334
          • Шаблон страницы результатов поиска 340
      • Поиск резюме . . 342
    • Администрирование Web_узла кадрового агентства . 344
      • Защита от несанкционированного доступа 344
        • Пользовательский интерфейс . 344
        • Программная реализация . 346
          • Хранение идентификатора подключения в Cookie 347
          • Первая проверка идентификатора и пароля . 349
          • Создание записи по умолчанию 349
          • Последующие проверки идентификатора и пароля . 351
      • Редактирование словарей 352
        • Пользовательский интерфейс . 352
        • Программная реализация . 355
          • Программа просмотра и редактирования списка
          • городов 355
          • Шаблон страницы списка городов 359
      • Редактирование списка администраторов . 362
        • Пользовательский интерфейс . 362
        • Программная реализация . 363
      • Добавление, поиск и удаление вакансий . . 367
      • Работа с резюме 371
      • Обработка ошибок . 372
  • Глава 9 Web-узел для проведения симпозиума . 375
    • База данных Web_узла симпозиума 376
      • Пожелания и предложения посетителей 376
      • Предложения о сотрудничестве . 377
      • Участники симпозиума . 378
      • Запись на госпитализацию . 378
      • Доклады и докладчики . 379
    • Разделы Web_узла симпозиума . 379
      • Бланк направления на госпитализацию . 382
        • Фреймы бланка . 383
        • Сценарий печати бланка 384
      • Страница пожеланий и предложений . 385
        • Форма отправки сообщения . 385
        • Программа comment.pl . . 387
      • Поиск участников симпозиума . 388
        • Форма поиска участников . 390
        • Программа заполнения формы поиска . 391
        • Программа выполнения поиска 392
        • Шаблон страницы с результатами поиска 395
      • Поиск докладов 396
        • Форма поиска докладов . 398
        • Программа поиска докладов . 399
    • Администрирование Web_узла симпозиума . . 400
      • Загрузка списка участников симпозиума . . 400
        • Форма для загрузки файла . . 404
        • Программа загрузки файла списка участников
        • симпозиума . 404
        • Программа сохранения списка участников в базе данных . 406
      • Загрузка списка докладов . . 409
        • Загрузка файлов ангиограмм и других файлов . 413
      • Просмотр сообщений от посетителей Web_узла симпозиума . 417
  • Глава 10 Применение сценариев PHP . 421
    • Как работают сценарии PHP . 424
    • Установка интерпретатора PHP . . 425
      • Установка в среде Linux 425
        • Изменение параметров установки . 425
        • Проверка установки в среде Linux . 426
      • Установка в среде Microsoft Windows . 427
        • Настройка Apache для работы с PHP 428
        • Настройка Microsoft IIS для работы с PHP 428
        • Проверка установки в среде Microsoft Windows 431
    • Просмотр переменных окружения . 432
    • Обработка форм . 434
      • Способы получения содержимого полей формы . 434
        • Использование массива $HTTP_POST_VARS[] . 434
        • Использование глобальных переменных . 435
      • Сценарий для обработки формы . . 436
      • Однострочное текстовое поле . 437
      • Многострочное текстовое поле . 438
      • Флажки с независимой фиксацией . 439
      • Флажки с зависимой фиксацией . . 440
      • Обработка списка . . 441
      • Обработка данных от графической кнопки 441
    • Программа AREFPHP . 442
    • Работа с Cookie в сценариях PHP 444
      • Заголовок HTTP для создания Cookie 444
      • Оглавление XIII
      • Запись Cookie . . 445
      • Получение значения Cookie . . 446
      • Изменение значения параметра Cookie 446
      • Удаление Cookie . 446
      • Пример использования Cookie 446
        • Определение текущего цвета фона . 449
        • Установка нового цвета фона 449
        • Установка цвета фона по умолчанию 450
    • Обмен данными с сервером электронной почты 451
      • Настройка интерпретатора PHP для работы
      • с электронной почтой . . 451
        • Настройка для Linux 451
        • Настройка для Microsoft Windows . 452
      • Отправка почты с помощью функции mail 452
    • Шаблоны HTML в сценариях PHP . . 455
      • Состав дистрибутива класса Template . 455
      • Три типа шаблонов . 457
        • Простые шаблоны 457
        • Циклические шаблоны 457
        • Условные шаблоны . 458
      • Пример использования простого шаблона 458
        • Исходный текст файла шаблонов . . 458
        • Сценарий PHP для заполнения шаблона 459
      • Пример использования циклического шаблона 462
        • Исходный текст файла шаблонов . . 462
        • Сценарий PHP для заполнения шаблона 463
  • Глава 11 Базы данных и PHP . 465
    • Основные операции с базами данных . . 465
      • Установка соединения с сервером СУБД . . 465
        • Обычное соединение 466
        • Постоянное соединение . 467
      • Выбор текущей базы данных . 467
      • Выдача команд SQL . . 468
      • Обработка результатов выполнения команды SQL 469
        • Команды изменения таблиц базы данных 469
        • Команда SELECT . 469
      • Просмотр содержимого таблицы в сценарии PHP . 470
    • Обработка ошибок . . 473
    • Применение шаблонов HTML . 474
      • Обычная техника использования шаблонов . 474
        • Файл шаблона . . 474
        • Файл сценария PHP . . 476
      • Специальные методы класса Template . 479
        • Файл шаблона . . 479
        • Файл сценария PHP . . 479
    • Редактирование и просмотр дерева . 481
      • Экспертное дерево решений . . 481
      • Структуры данных . 483
      • Приложение для редактирования дерева . . 485
        • Сценарии PHP редактирования дерева 486
        • Просмотр узла . . 490
        • Редактирование заголовка и текста узла . 491
        • Создание дочернего узла 492
        • Удаление узла . 493
      • Приложение для просмотра дерева . 494
        • Сценарий для просмотра дерева . 494
        • Просмотр дочернего узла 497
        • Просмотр родительского узла . 497
  • Приложение Как выбрать провайдера для размещения Web-сайта . 499
    • Хостинг или размещение компьютера на площадке провайдера? 499
      • Виртуальный Web_сервер на компьютере провайдера . 500
      • Размещение компьютера в локальной сети провайдера 501
    • Выбор провайдера для размещения виртуального сайта 502
      • Пропускная способность каналов передачи данных
      • провайдера . 502
      • Предоставление собственного доменного имени . 505
      • Предоставление почтовых ящиков 506
      • Ограничения на объем файлов виртуального Web_сайта . 506
      • Ограничения на использование активных
      • компонентов и баз данных . . 506
      • Способы обновления файлов сайта . 507
    • Выбор провайдера для размещения компьютера
    • в локальной сети . . 507
      • Общая стоимость размещения сервера 507
      • Плата за установку сервера . 508
      • Электропитание сервера 508
      • Аренда места для размещения сервера в помещении
      • провайдера . 508
      • Подключение к Интернету . 509
      • Оплата входящего и исходящего трафика . 510
      • Использование дополнительных адресов IP . 511
      • Аренда дополнительного оборудования . 511
      • Выполнение работ на площадке провайдера . 511
      • Дополнительные услуги провайдера . . 512
      • Прочие факторы . 513
  • Предметный указатель . . 515
  • Библиографический список . . 525


Создание интернет-магазинов: http://www.shop2you.ru/ © Александр Фролов, Григорий Фролов, 1991-2016