Upload
alexey-bovanenko
View
765
Download
2
Tags:
Embed Size (px)
Citation preview
web-программирование
Apache
Алексей Бованенко
Введение
● Web-сервер● Ветки
● 1.3● 2.0● 2.2
Windows
Запуск web-сервера
● Сервис● httpd.exe -k install● httpd.exe -k install -n «MyServiceName»● httpd.exe -k install -n «MyServiceName» -f c:\files\my.conf● httpd.exe -k uninstall● httpd.exe -k uninstall -n «MyServiceName»● httpd.exe -n «MyServiceName» -t● httpd.exe -k start/stop|shutdown/restart
● Приложение● httpd.exe● httpd.exe -k shutdown | Control+C● httpd.exe -k restart
unix
Запуск web-сервера
● /usr/bin/apache2/bin/apachectl● /usr/bin/apache2/bin/apachectl -f my.conf● /usr/bin/apache2/bin/apachectl -k stop● /usr/bin/apache2/bin/apachectl -k restart● kill -TERM `cat /usr/local/apache2/logs/httpd.pid`
Конфигурирование
Введение
● httpd.conf● Дополнительные файлы конфигурации
● Include — директива● Include /usr/local/apache2/conf/vhosts/*.conf
● Одна директива — одна строка● Перенос строки \
● # - строка комментария● Проверка файла конфигурации
● /usr/bin/apache2/bin/apachectl -t mytest.conf
Модули
Модули сервера
● Список модулей, включенных в ядро● httpd.exe -l
● Подключение модулей (mod_so)● LoadModule status_module modules/module_name.so● Директива <IfModule>
● <IfModule [!]mod_filename|mod_id>....</IfModule>
Директивы
Использование директив
● Директивы в основном файле — ко всему серверу
● Для локализации действия директив● <Directory>● <DirectoryMatch>● <Files>● <FilesMatch>● <Location>● <LocationMatch>
● Директивы для отдельного виртуального хоста
● <VirtualHost>
Директива <Directory>
● Директива относится к директории и поддиректориям
● <Directory /usr/local/httpd/htdocs>Indexes FollowSymLinks
</Directory>● Использование подстановочных символов
● ? *● <Directory /home/*/public_html>
● Использование регулярных выражений
Директива <DirectoryMatch>
● Использование регулярных выражений в имени директории
● <DirectoryMatch /www/(.+)?[0-9]{3,6}>
Директивы <Files> и<FileMatch>
● Директива <Files> для определенных файлов
● <Files ~ = «\.(gif|jpe?g|png)$»> ... </Files>
● Директива <FilesMatch> для определенных файлов, задаваемых регулярным выражением
● <FilesMatch «\.(gif|jpe?g|png)$»> ... </FilesMatch>
Директива <Location> и <LocationMatch>
● Директива <Location> ограничивается частью URL пути
● <Location ~ «/(extra|special)/data»>
● Директива <LocationMatch> ограничивается частью URL пути, задаваемой регулярным выражением
● <LocationMatch «/(extra|special)/data»>
.htaccess
Управление с помощью .htaccess
● Имя файла по умолчанию: .htaccess● Имя задается директивой AccessFileName
● AceessFileName .myacl
● Директивы из файла .htaccess — директория и дочерние директории
● Директива AllowOverride в Directory● AllowOverride All|None|directives...● AllowOverride Indexes Options
● Файл .htaccess● Options +ExecCGI● Options Includes
Виртуальные хосты
Отладка конфигурации
● /usr/local/apache2/bin/httpd -S● Вывод отладочной информации о чтении файла
конфигурации
Директива <VirtualHost>
● <VirtualHost addr[:port] [addr[:port]] ...>...
</VirtualHost>● <VirtualHost 127.0.0.1>
DocumentRoot /www/docs/docs.example.com ServerNamewww.example.com ErrorLog logs/www.example.com.log</VirtualHost>
Директива ServerAlias
● ServerAlias server2.example.com