Apache

Директива Order, вместе с директивами Allow и Deny, контролирует трёх-шаговую систему контроля доступа. Первый шаг обрабатывает или все директивы Allow, или все директивы Deny. Второй шаг разбирает оставшуюся директиву (Deny или Allow). Третий шаг принимает все запросы, которые не соответствуют ни первой, ни второй.

Директивы, Allow и Deny, обрабатываются, нетипично поведению сетевых экранов (firewall), где используется только первая директива. Результирующим является последнее соответствие (также нетипично поведению сетевых экранов).

Order Deny,Allow
 Deny from all
 Allow from 192.168.1.*
В данном примере, если пытаться следовать логике firewall, запрет доступа реализован для всех хостов, и разрешение 192.168.1.* не сработает, в то время, как в соответствии с принципами рассматриваемых конфигурационных файлов apache (в том числе cupsd.conf) доступ хостам из подсети 192.168.1.* разрешён.
Добавлено: 30 июня 2011 | Читать далее...
Модуль mod_rewrite имеющийся в составе Apache — это мощнейшее, интеллектуальное средство преобразования URL адресов. С ним возможны почти все типы преобразований, которые могут выполняться или нет в зависимости от разных условий, факторов.

Данный модуль представляет собой основанный на правилах механизм (синтаксический анализатор с применением регулярных выражений), выполняющий URL преобразования на лету. Модуль поддерживает неограниченное количество правил и связанных с каждым правилом условий, реализуя действительно гибкий и мощный механизм управления URL.

Список всех доступных переменных:
  • HTTP_USER_AGENT  Содержит информацию о типе и версии браузера и операционной системы посетителя
  • HTTP_REFERER Приводится адрес страницы, с которой посетитель пришёл на данную страницу
  • HTTP_COOKIE Список COOKIE передаваемых браузером[/color]
  • HTTP_FORWARDED Страница непосредственно с которой перешел пользователь
  • HTTP_HOST Адрес сервера
  • HTTP_ACCEPT Описываются предпочтения клиента относительно типа документа
  • REMOTE_ADDR IP-адрес посетителя
  • REMOTE_HOST Адрес посетителя в нормальной форме
  • REMOTE_IDENT Имя удаленного пользователя. Имеет формат имя.хост
  • REMOTE_USER То-же, что и REMOTE_IDENT, но содержит только имя
  • REQUEST_METHOD Позволяет определить тип запроса (GET или POST). Должен обязательно анализироваться, т.к. определяет дальнейший способ обработки информации
  • SCRIPT_FILENAME Полный путь к вебстранице на сервере
  • PATH_INFO Содержит в себе все, что передавалось в скрипт
  • QUERY_STRING Содержит строчку, переданную в качестве запроса при вызове CGI скрипта
  • AUTH_TYPE Используется для идентификации пользователя
  • DOCUMENT_ROOT Содержит путь к корневой директории сервера
  • SERVER_ADMIN Почтовый адрес владельца сервера, указанный при установке
  • SERVER_NAME Адрес сервера
  • SERVER_ADDR IP-адрес вашего сайта
  • SERVER_PORT Порт на котором работает Apache
  • SERVER_PROTOCOL Версия HTTP протокола
  • SERVER_SOFTWARE Название сервера
  • THE_REQUEST Полная строка HTTP запроса отправленная браузером серверу (т.е., «GET /index.html HTTP/1.1»). Она не включает какие-либо дополнительные заголовки отправляемые браузером
  • REQUEST_URI Ресурс, запрошенный в строке HTTP запроса
  • REQUEST_FILENAME Полный путь в файловой системе сервера к файлу или скрипту соответствующим этому запросу
  • TIME_YEAR, TIME_MON, TIME_DAY, TIME_HOUR, TIME_MIN, TIME_SEC, TIME_WDAY, TIME Переменные предназначены для работы со временем в разных форматах
Добавлено: 30 июня 2011 | Читать далее...
Redirect 301 (301 Permanent Redirect) используется в нескольких случаях: при смене домена, при переносе страницы сайта, для склейки имени сайта с www и без него. Это важно для передачи Page Rank (PR) и сохранения поискового трафика.

301 редирект это наилучший метод сохранения позиций в поисковых системах, когда нужно перенести страницу или сайт. Код "301" интерпретируется как постоянное перемещение ("moved permanently").

Простой редирект (в файле .htaccess или httpd.conf):

Redirect 301 / http://www.you_domain.com/new.html
где:
Redirect 301 - это инструкция, говорящая что страница перемещена
/ - означает, что все с верхнего уровня сайта, включая все подкаталоги, будет переадресовано
http://www.you_domain.com/new.html - новая страница или сайт (не забывайте поставить последний "/", если переадресация идет на сайт).
Добавлено: 19 июня 2011 | Читать далее...
Концепция виртуальных хостов позволяет Apache поддерживать несколько Web-узлов. Получается, что один Web-сервер заменяет несколько и пользователи видят отдельные Web-узлы.

Apache можно настроить несколькими способами: чтобы запускался один сервер, который будет прослушивать ВСЕ обращения к виртуальным серверам, или запускать отдельный процесс для каждого виртуального сервера. В первом случае один сервер будет одновременно обслуживать все виртуальные хосты. Если интересует такой вариант, нужно настраивать виртуальные сервера с помощью директивы VirtualHost. Настройка отдельных процессов для каждого сервера осуществляется с помощью директивы Listen и BindAddress.
Добавлено: 01 мая 2011 | Читать далее...
Установка apache из портов в терминале набираем:

cd /usr/ports/www/apache22/
make install clean
После установки конфигурационный файл apache будет находится в каталоге /usr/local/etc/apache22/ с именем httpd.conf с настройками по умолчанию. В этот конфигурационный файл нужно внести изменения, для этого в терминале набираем:

vi /usr/local/etc/apache22/httpd.conf
Изменено: 18 сентября 2011 | Добавлено: 02 апреля 2011 | Читать далее...