Apache — различия между версиями
Root (обсуждение | вклад) |
Root (обсуждение | вклад) |
||
Строка 4: | Строка 4: | ||
AddType application/x-httpd-php-source .phps | AddType application/x-httpd-php-source .phps | ||
</IfModule> | </IfModule> | ||
+ | |||
Строка 10: | Строка 11: | ||
DirectoryIndex index.php index.html | DirectoryIndex index.php index.html | ||
</IfModule> | </IfModule> | ||
+ | |||
+ | |||
+ | |||
+ | Настройка '''Basic-auth''' | ||
+ | |||
+ | Убедиться, что разрешен соответствующий модуль в конфигурации apache в httpd.conf: '''auth_basic_module''' | ||
+ | Проверям что модуль загружен | ||
+ | # apachectl -M | grep auth_basic_module | ||
+ | |||
+ | Для директории которую будем закрывать добавляем в httpd.conf | ||
+ | <Directory "/usr/local/www/директория"> | ||
+ | AllowOverride AuthConfig | ||
+ | </Directory> | ||
+ | |||
+ | Сохраняем и перечитываем конфиг apachectl graceful | ||
+ | |||
+ | Затем в директории сайта создаём файл .htaccess и пишём туда: | ||
+ | AuthType Basic | ||
+ | AuthName "Enter password" | ||
+ | AuthUserFile /Путь/к/файлу/с/паролями/.htpasswd | ||
+ | AuthGroupFile /dev/null | ||
+ | Require valid-user | ||
+ | |||
+ | В AuthName можно написать свой текст, который выводится наверху окошка при запросе браузером имени пользователя/пароля.<br/> | ||
+ | В AuthUserFile прописываем путь к файлу с паролями. Желательно файл с паролями хранить вне пути, доступного через web сервер.<br/> | ||
+ | |||
+ | |||
+ | Теперь собственно создаём наш файл паролей. Делаем это с помощью утилитки htpasswd, поставляемой с апачем. | ||
+ | |||
+ | Для создания файла применяем команду: | ||
+ | # htpasswd -с .htpasswd имя_пользователя | ||
+ | |||
+ | Для того, чтоб поменять пароль у уже существующего пользователя достаточно сделать: | ||
+ | # htpasswd .htpasswd имя_пользователя | ||
+ | |||
+ | Не забываем дать права на чтение .htaccess и .htpasswd веб-серверу | ||
+ | |||
+ | |||
+ | |||
Тестирование конфигурации После редактирования конфиг файла стоит проверить, что вы ничего в нем не поломали и все в порядке(по крайней мере с синтаксисом). Для этого можно использовать команду httpd -t. которая считывает конфиг и проверяет его синтаксис. | Тестирование конфигурации После редактирования конфиг файла стоит проверить, что вы ничего в нем не поломали и все в порядке(по крайней мере с синтаксисом). Для этого можно использовать команду httpd -t. которая считывает конфиг и проверяет его синтаксис. | ||
# httpd -t | # httpd -t | ||
− | |||
Тестирование конфигурации хостов, чтобы просмотреть установки заданные в конфиге. Очень часто ошибки с конфигурацией виртуальных хостов выявляются именно при помощи этой команды. | Тестирование конфигурации хостов, чтобы просмотреть установки заданные в конфиге. Очень часто ошибки с конфигурацией виртуальных хостов выявляются именно при помощи этой команды. | ||
# httpd -S | # httpd -S | ||
− | |||
'''apachectl''' — управление apache сервером | '''apachectl''' — управление apache сервером |
Версия 20:37, 28 марта 2014
Подключение php-модуля:
<IfModule mime_module> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps </IfModule>
Опция Directorylndex показывает, какие файлы нужно выводить пользователю, если он запросил не конкретный файл, а директорию. Данная настройка приведет к тому, что при запросе директории apache сначала будет искать файл index.php, если он будет найден, запустит его и выведет результат выполнения пользователю. Если такого файла нет, то тогда он попытается найти файл index.html. Если и такого файла не найдется, то пользователь получит ошибку. Чтобы не писать в адресе index.php надо добавить его в httpd.conf:
<IfModule dir_module> DirectoryIndex index.php index.html </IfModule>
Настройка Basic-auth
Убедиться, что разрешен соответствующий модуль в конфигурации apache в httpd.conf: auth_basic_module Проверям что модуль загружен
# apachectl -M | grep auth_basic_module
Для директории которую будем закрывать добавляем в httpd.conf
<Directory "/usr/local/www/директория"> AllowOverride AuthConfig </Directory>
Сохраняем и перечитываем конфиг apachectl graceful
Затем в директории сайта создаём файл .htaccess и пишём туда:
AuthType Basic AuthName "Enter password" AuthUserFile /Путь/к/файлу/с/паролями/.htpasswd AuthGroupFile /dev/null Require valid-user
В AuthName можно написать свой текст, который выводится наверху окошка при запросе браузером имени пользователя/пароля.
В AuthUserFile прописываем путь к файлу с паролями. Желательно файл с паролями хранить вне пути, доступного через web сервер.
Теперь собственно создаём наш файл паролей. Делаем это с помощью утилитки htpasswd, поставляемой с апачем.
Для создания файла применяем команду:
# htpasswd -с .htpasswd имя_пользователя
Для того, чтоб поменять пароль у уже существующего пользователя достаточно сделать:
# htpasswd .htpasswd имя_пользователя
Не забываем дать права на чтение .htaccess и .htpasswd веб-серверу
Тестирование конфигурации После редактирования конфиг файла стоит проверить, что вы ничего в нем не поломали и все в порядке(по крайней мере с синтаксисом). Для этого можно использовать команду httpd -t. которая считывает конфиг и проверяет его синтаксис.
# httpd -t
Тестирование конфигурации хостов, чтобы просмотреть установки заданные в конфиге. Очень часто ошибки с конфигурацией виртуальных хостов выявляются именно при помощи этой команды.
# httpd -S
apachectl — управление apache сервером
- apachectl start - запуск
- apachectl stop - остановка
- apachectl restart - перезагрузка
- apachectl graceful - перечитать конфиг без перезагрузки apache