4330

Инструментальные средства для создания собственной системы управления контентом сайта

Лабораторная работа

Информатика, кибернетика и программирование

Инструментальные средства для создания собственной системы управления контентом сайта. Цели лабораторного практикума: получение навыков и изучение основных приемов создания персонального Web-сервера. знакомство с программными продуктами:...

Русский

2012-11-16

1.11 MB

34 чел.

Инструментальные средства для создания собственной системы управления контентом сайта.

Цели лабораторного практикума:

  •  получение навыков и изучение основных приемов создания персонального Web-сервера.
  •  знакомство с программными продуктами:
  •  Web-сервером Apache;
  •  Языком серверных скриптов PHP;
  •  Сервером баз данных MySQL.

1. Введение.

1.1. Язык PHP

PHP – это язык серверных скриптов (server scripting language), встраиваемый в HTML, который интерпретируется и выполняется на сервере.

PHP является препроцессором HTML. До того, как сервер "отдаст" файл браузеру, его просматривает препроцессор-интерпретатор. Для того чтобы это происходило, файлы, которые подвергаются обработке препроцессором, должны иметь определенное расширение (обычно это .phtml или .php, но эти значения можно поменять) и содержать (хотя это не обязательное требование) код для препроцессора. Перед отправкой страницы PHP-код проигрывается на сервере и браузеру выдается результат в виде опять таки HTML-страницы, которая может сильно отличаться от той, что хранится на сервере. Обычные же страницы, имеющие расширение .html/.htm Web-сервер будет отправлять браузеру без какой-либо обработки.

PHP называется языком серверных скриптов в отличие от JavaScript/Jscript/VBScript, которые являются языками клиентских скриптов. Это значит, что PHP-скрипт выполняется на сервере, а клиенту передается результат его работы, тогда как в JavaScript-код полностью передается на клиентскую машину и только там выполняется браузером.

1.2 Возможности PHP

В нескольких словах – на PHP можно сделать все, что можно сделать с помощью CGI–программ. Например: обрабатывать данные из форм, генерировать динамические страницы, получать и посылать куки (cookies).

Кроме этого в PHP включена поддержка многих баз данных, что делает написание Web-приложений с использованием БД до невозможности простым.

Вот неполный перечень поддерживаемых БД:

Adabas D

InterBase

Solid

dBase

mSQL

Sybase

Empress

MySQL

Velocis

FilePro

Oracle

Unix dbm

Informix

PostgreSQL

ODBC

Вдобавок ко всему PHP понимает протоколы IMAP, SNMP, NNTP, POP3 и даже HTTP, а также имеет возможность работать с сокетами (sockets) и общаться по другим протоколам.

1.3. Сервер баз данных MySQL

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

MySQL был разработан компанией TcX для внутренних нужд, которые заключались в быстрой обработке очень больших баз данных. Компания утверждает, что использует MySQL с 1996 года на сервере с более чем 40 БД, которые содержат 10,000 таблиц, из которых более чем 500 имеют более 7 миллионов строк.

MySQL является идеальным решением для малых и средних приложений. Исходные тексты сервера компилируются на множестве платформ. Наиболее полно возможности сервера проявляются на Unix-серверах, где есть поддержка многопоточности, что дает значительный прирост производительности. В варианте под Windows, MySQL может запускаться как сервис Windows NT или как обычный процесс на Windows 95/98.

1.4. Web-сервер Apache

Самый распространенный Web-сервер в мире - это Apache. По данным компании Netcraft общее число Web-узлов, работающих под его управлением  достигло 2 млн. (55% общего числа узлов) и постоянно растет. Для сравнения: на долю серверов Microsoft приходится 25%, Netscape -7%. Будучи бесплатной открытой программой, предназначенной для бесплатных же Unix-систем (FreeBSD, Linux и др.), Apache по функциональным возможностям и надежности не уступает коммерческим серверам, а широкие возможности конфигурирования позволяют настроить его для работы практически с любой конкретной системой. Существуют локализации сервера для различных языков, в том числе и для русского.

2 Установка инструментальных средств для создания собственной системы управления контентом сайта.

2.1. Установка WEB -сервера

Для успешной установки WEB –сервера apache_1.3.27-win32-x86-no_src.exe необходимо пошаговое выполнение действий соответственно инструкции.

Шаг 1.

Шаг 2.


Шаг 3.

Шаг 4.




Шаг 5.

Шаг 6.

Шаг 7.

Шаг 8.


Запуск и остановка WEB –сервера производятся из меню Windows.

2.1.1. Настройка Apache

1.

Откройте директорию C:\Program Files\Apache Group\Apache\conf. Откройте находящийся там файл httpd.conf. Вам предстоит найти и изменить в нем некоторые строки, а именно те, о которых упоминается далее. Во избежание недоразумений не трогайте все остальное. Следует заметить, что в нем каждый параметр сопровождается несколькими строками комментариев, разобраться в которых с первого раза довольно тяжело. Поэтому не обращайте на них внимание.

2.

В поле ServerAdmin укажите Ваш E-mail адрес, который будет показываться в сообщениях об ошибке сервера. Например:

ServerAdmin Mail@mail.ru

3.

В поле ServerName напишите любое слово - на работе это не сказывается, например:

ServerName localhost

4.

В поле DocumentRoot укажите ту директорию, в которой будут храниться Ваши html-файлы, например:

DocumentRoot "C:/www1/intproject/cgi-bin"

5.

Найдите блок, начинающийся строкой <Directory /> и заканчивающийся </Directory> (вообще, такие блоки обозначают установки для заданной директории и всех ее поддиректорий). Его нужно изменить на:

<Directory C:/www1/intproject/cgi-bin/>

    Options Indexes Includes

    AllowOverride All

    Allow from all

</Directory> 

Таким образом, в этом блоке будут храниться установки для всех директорий по умолчанию (т.к. это - корневая директория).

6.

Найдите аналогичный блок, начинающийся <Directory " C:/Program Files/Apache Group/Apache /htdocs"> и заканчивающийся </Directory>. Там будет много комментариев, не обращайте на них внимание. Этот блок следует заменить на:

<Directory "C:/www1/intproject/cgi-bin">

   Options Indexes FollowSymLinks MultiViews

   AllowOverride All

   Order allow,deny

   Allow from all

</Directory>

Это - установки для директории с Вашими html-документами. Если хотите, можете установить другую директорию, главное, чтобы она совпадала с той, которая прописана в параметре DocumentRoot

7.

Установите DirectoryIndex так:

DirectoryIndex index.htm index.html

Это - так называемые файлы индекса, которые автоматически выдаются сервером при обращении к какой-либо директории, если не указано имя html-документа. В принципе, можно добавить сюда и другие имена, например, index.php, если Вы будите работать с PHP и т.д.

8.

Найдите и пропишите такой параметр:

   ScriptAlias /cgi-bin/ "C:/www1/intproject/cgi-bin/"

   <Directory "C:/www1/intproject/cgi-bin">

       AllowOverride All

       Options None

       Order allow,deny

       Allow from all

   </Directory>

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

ScriptAlias /mycgi/ "f:/mycgidir/"

Подобный параметр говорит Apache о том, что, если будет указан путь вида http://localhost/cgi-bin, то на самом деле следует обратиться к директории f:/cgi-bin.

9.

Настройте следующий параметр:

AddHandler cgi-script .cgi .bat .exe

По умолчанию этот параметр закомментирован, необходимо убрать «#»

Это говорит Apache о том, что файлы с расширением .exe и .bat нужно рассматривать как CGI-скрипты.

10.

Установите:

# To use server-parsed HTML files

AddHandler server-parsed .shtml .shtm .sht .html .htm

11.

Настройка PHP

Добавить код в конец файла:

<Directory "С:/Program Files/Apache Group/PHP">

Options ExecCGI

</Directory>

ScriptAlias "/__php_dir__/" "С:/Program Files/Apache Group/PHP/"

Action application/x-httpd-php3 "/__php_dir__/php.exe"

Откройте файл mime.types.

В него необходимо добавить строку:

application/x-httpd-php3 phtml php3 php

(Например перед строкой: application/zip    zip)

Далее необходимо остановить и запустить Apache!!!

Для запуска сервера нажмите Пуск -> Программы-> Apache HTTP Server -> Control Apache Server -> Start, при этом появится окно, очень похожее на Сеанс MS-DOS, и ничего больше не произойдет. Не закрывайте его и не трогайте до конца работы с Apache.

2.2. Установка PHP

Для успешной установки PHP php-4.4.4-installer.exe необходимо пошаговое выполнение действий соответственно инструкции.

Шаг 1.

Шаг 2.

Шаг 3.

Шаг 4. С:\Program Files\Apache Group\PHP




Шаг 5.

Шаг 6.


Шаг 7. Выбрать Apache

Шаг 8.

Шаг 9.

Шаг 10.

2.2.1. Настройка PHP

1.

В файле С:\WINDOWS\php.ini есть закомментированные строки, выглядящие так: ;extension=имя_модуля.dll

Если Вы хотите включить какой-нибудь модуль (по умолчанию уже включена поддержка GD и mSQL), раскомментируйте соответствующую строку (уберите точку с запятой).

2.

Найти переменную в файле в php.ini register_globals и установите:

register_globals = On

2.3. Установка mysql-3.23.43-win

Разархивировать mysql-3.23.43-win.zip

Запустить Setup.exe и следовать инструкциям.


Шаг 1.

Шаг 2.

Шаг 3.

Шаг 4. С:\Program Files\Apache Group\MySQL




Шаг 5.

Шаг 6.


Запустить
 С:\Program Files\Apache Group\MySQL\bin\winmysqladmin.exe

В случае запроса имени и пароля, то необходимо ввести логин и пароль текущего пользователя Windows. (Login: student, password: 307)

Далее выбрать на вкладке my.ini Setup.

Отредактировать my.ini также можно в директории С:\WINDOWS\my.ini

Здесь необходимо изменить последние три строчки:

user=root

#password=

QueryInterval=10

Сохранить изменениянажать на кнопку Save Modification.

Пример текста, который содержится в файле

#This File was made using the WinMySQLAdmin 1.3 Tool

#31.08.2006 18:55:08

#Uncomment or Add only the keys that you know how works.

#Read the MySQL Manual for instructions

[mysqld]

basedir=D:/Program Files/Apache Group/mysql

#bind-address=192.168.0.10

datadir=D:/Program Files/Apache Group/MySQL/data

#language=D:/Program Files/Apache Group/mysql/share/your language directory

#slow query log#=

#tmpdir#=

#port=3306

#set-variable=key_buffer=16M

[WinMySQLadmin]

Server=D:/Program Files/Apache Group/MySQL/bin/mysqld-nt.exe

user=root

#password=

QueryInterval=10

Перезагрузить компьютер!!!

2.4. Установка phpmyadmin

Разархивировать архив phpmyadmin.rar в папку выполнения проекта C:\www1\intproject\cgi-bin.

Для запуска phpmyadmin необходимо набрать в IE http://localhost/phpmyadmin/index.php.

2.5. Проверка работоспособности сервера

Вот шаги, которые нужно проделать для проверки работоспособности сервера:

Проверка html: в директории C:/www1/intproject/cgi-bin с html-документами Apache создайте файл index.html.


index.html

<HTML>

<HEAD>

<TITLE>Проверка работоспособности</TITLE>

<META content="text/html; charset=windows-1251" http-equiv=Content-Type>

</HEAD>

<BODY>

<H2 align=center>Сервер Apache работает.</H2>

</BODY>

</HTML>

Теперь запустите браузер и наберите:

http://localhost/index.html

или просто

http://localhost/

Загрузится Ваш файл.

Проверка php: в директории C:/www1/intproject/cgi-bin создайте файл phpinfo.php.

phpinfo.php

<?  echo "It works!<br>\n";

   phpinfo();

?>

Теперь запустите браузер и наберите:

http://localhost/phpinfo.php

На экране появится информация о PHP.

3. Основные источники информации

  1.  Официальный сайт Apache: http://www.apache.org/
  2.  Официальный сайт PHP: http://ru.php.net/
  3.  Официальный сайт Active Perl: http://www.activestate.com/
  4.  Официальный сайт MySQL: http://www.mysql.com/
  5.  Полезная информация об Apache: http://www.apache.ru/
  6.  Всероссийский клуб вебмастеров: http://www.webclub.ru/
  7.  Клуб разработчиков PHP: http://www.phpclub.net/