24
web-программирование Apache Алексей Бованенко

Apache

Embed Size (px)

Citation preview

Page 1: Apache

web-программирование

Apache

Алексей Бованенко

Page 2: Apache

Введение

● Web-сервер● Ветки

● 1.3● 2.0● 2.2

Page 3: Apache

Windows

Page 4: Apache

Запуск 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

Page 5: Apache

unix

Page 6: Apache

Запуск 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`

Page 7: Apache

Конфигурирование

Page 8: Apache

Введение

● httpd.conf● Дополнительные файлы конфигурации

● Include — директива● Include /usr/local/apache2/conf/vhosts/*.conf

● Одна директива — одна строка● Перенос строки \

● # - строка комментария● Проверка файла конфигурации

● /usr/bin/apache2/bin/apachectl -t mytest.conf

Page 9: Apache

Модули

Page 10: Apache

Модули сервера

● Список модулей, включенных в ядро● httpd.exe -l

● Подключение модулей (mod_so)● LoadModule status_module modules/module_name.so● Директива <IfModule>

● <IfModule [!]mod_filename|mod_id>....</IfModule>

Page 11: Apache

Директивы

Page 12: Apache

Использование директив

● Директивы в основном файле — ко всему серверу

● Для локализации действия директив● <Directory>● <DirectoryMatch>● <Files>● <FilesMatch>● <Location>● <LocationMatch>

● Директивы для отдельного виртуального хоста

● <VirtualHost>

Page 13: Apache

Директива <Directory>

● Директива относится к директории и поддиректориям

● <Directory /usr/local/httpd/htdocs>Indexes FollowSymLinks

</Directory>● Использование подстановочных символов

● ? *● <Directory /home/*/public_html>

● Использование регулярных выражений

Page 14: Apache

Директива <DirectoryMatch>

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

● <DirectoryMatch /www/(.+)?[0-9]{3,6}>

Page 15: Apache

Директивы <Files> и<FileMatch>

● Директива <Files> для определенных файлов

● <Files ~ = «\.(gif|jpe?g|png)$»> ... </Files>

● Директива <FilesMatch> для определенных файлов, задаваемых регулярным выражением

● <FilesMatch «\.(gif|jpe?g|png)$»> ... </FilesMatch>

Page 16: Apache

Директива <Location> и <LocationMatch>

● Директива <Location> ограничивается частью URL пути

● <Location ~ «/(extra|special)/data»>

● Директива <LocationMatch> ограничивается частью URL пути, задаваемой регулярным выражением

● <LocationMatch «/(extra|special)/data»>

Page 17: Apache

.htaccess

Page 18: Apache

Управление с помощью .htaccess

● Имя файла по умолчанию: .htaccess● Имя задается директивой AccessFileName

● AceessFileName .myacl

● Директивы из файла .htaccess — директория и дочерние директории

● Директива AllowOverride в Directory● AllowOverride All|None|directives...● AllowOverride Indexes Options

● Файл .htaccess● Options +ExecCGI● Options Includes

Page 19: Apache

Виртуальные хосты

Page 20: Apache

Отладка конфигурации

● /usr/local/apache2/bin/httpd -S● Вывод отладочной информации о чтении файла

конфигурации

Page 21: Apache

Директива <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>

Page 22: Apache

Директива ServerName

● ServerName www.testserver.com:80

Page 23: Apache

Директива ServerAlias

● ServerAlias server2.example.com

Page 24: Apache

Конец

Спасибо за внимание

e-mail: [email protected]