Apache в Debian Lenny
Модераторы: Warderer, Модераторы разделов
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Apache в Debian Lenny
Подскажите, пожалуйста, в Debian что используется какая-то своя собственная сборка Apache. Все конфиги расположены не там, где они должны быть. В руководствах сказано, что главный файл конфигурации называется /usr/apache/etc/httpd.conf, однако здесь httpd.conf расположен в /etc/apache2 и он пустой. Самый большой файл в этом каталоге называется /etc/apache2/apache2.conf, я так понимаю он и является основным файлом конфигурации, а все остальные подключены к нему с помощью директивы include.
Подскажите, пожалуйста, как мне конфигурировать апач: в каком файле искать основные директивы (о том какие интерфейсы и какие порты слушать), где настраиваются дополнительные модули. Или мне лучше удалить дебиановскую сборку и собрать апач из оригинальных исходников с http://svn.apache.org/?
Кстати, можно ссылку на какую-нибудь вменяемую русскоязычную статью по конфигурированию апача? Я в этом деле новичок, мне апач нужен для того чтобы под ним работал веб-интерфейс rtorrent и для эксперементов с PHP-движками.
Подскажите, пожалуйста, как мне конфигурировать апач: в каком файле искать основные директивы (о том какие интерфейсы и какие порты слушать), где настраиваются дополнительные модули. Или мне лучше удалить дебиановскую сборку и собрать апач из оригинальных исходников с http://svn.apache.org/?
Кстати, можно ссылку на какую-нибудь вменяемую русскоязычную статью по конфигурированию апача? Я в этом деле новичок, мне апач нужен для того чтобы под ним работал веб-интерфейс rtorrent и для эксперементов с PHP-движками.
-
IMB
- Сообщения: 2567
- ОС: Debian
Re: Apache в Debian Lenny
zless /usr/share/doc/apache2/README.Debian.gz
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
При перезапуске апача выводится:
В чём дело?
Код: Выделить всё
Restarting web server: apache2apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerNameВ чём дело?
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Apache в Debian Lenny
Надо в /etc/hosts прописать:
Код: Выделить всё
127.0.1.1 localwebМои розовые очки
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
или в конфиге явно указать servername.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Вот где только эту директиву servername искать? Как сказано в файле документации, который мне тут указали, вся основная конфигурация находится в /etc/apache2/apache2.conf. /etc/apache2/httpd.conf - пустой, видимо в этой сборке он считается аттавизмом. При исследовании apache2.conf, обнаружил что к нему директивами include подключён файл: /etc/apache2/ports.conf, а также директории /etc/apache2/mods-enabled и /etc/apache2/sites-enabled. Куда именно нужно servername прописывать?
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
в любой из вами перечисленных. ведь apache их все прочитывает.
но наиболее логичным (с точки зрения человека-администратора) будет, пожалуй apache.conf или httpd.conf (тут уж на ваш личный вкус).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Ладно. С директивами я на apache.ru разберусь. А вот пока другой вопрос: все сайты должны располагаться в директории /var/www. А какому пользователю и какой группе должны принадлежать файлы в этой директории и какие должны быть у них права доступа?
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Apache в Debian Lenny
По дефолту www-data. А вообще описывается это в
Код: Выделить всё
$ cat /etc/apache2/envvars | grep www-data
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-dataСовершенно не обязательно. Если использовать виртуальные хосты, то там для каждого хоста все прописывается. Хоть в /tmp можно засунуть (:
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
Fkabir
- Сообщения: 369
Re: Apache в Debian Lenny
Насчет servername
создаем файл /etc/apache2/conf.d/fqdn - файл с именем сервера
ServerName web.server.com
тут web.server.com - имя вашего веб сервера по умолчанию
и рестарт апача
Также Директива ServerName может прописываться для любого вирт хоста своя в /etc/apache2/sites-available/
вида
См http://www.instanceof.ru/linux/lamp
создаем файл /etc/apache2/conf.d/fqdn - файл с именем сервера
ServerName web.server.com
тут web.server.com - имя вашего веб сервера по умолчанию
и рестарт апача
Также Директива ServerName может прописываться для любого вирт хоста своя в /etc/apache2/sites-available/
вида
#Начало описания виртуального хоста
<VirtualHost *:80>
# Установки для каталога
<Directory /var/www/doku.my/public_html>
AllowOverride All
</Directory>
#Мыльник админа - необязателен
ServerAdmin max@instanceof.ru
# имя сервера.
ServerName doku.my
# имена на которые сервер так же должен "откликаться"
ServerAlias www.doku.my
# Корневая директория для данного вирт. хоста
DocumentRoot /var/www/doku.my/public_html
# Файлы, которые будут обрабатываться, если файл явно не указан
DirectoryIndex index.php
# Конец описания виртуального хоста.
</VirtualHost>
См http://www.instanceof.ru/linux/lamp
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
точно-точно. только файл должен называться FQDN4, а не fqdn. иначе не заработает.
(улыбка)
там посоветуют записать в файл /etc/apache2/conf.d/FQDN6. не верьте — это неправильно.
(опять улыбка)
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Допустим мне нужно нужно поработать с php-скриптом. Создаю файл /etc/apache2/sites-available/site1.localhost, делаю на него симплинк /etc/apache2/sites-enable/001-site1.localhost
После закачиваю в /var/www/site1.localhost необходимый php-скрипт, передаю его файлы во владение пользователя www-data и группы www-data и перезапускаю апач.
Захожу браузером на http://site1.localhost - и ничего. Зато этот скрипт обнаруживается работающим на http://localhost
Код: Выделить всё
<VirtualHost localhost:80>
ServerName site1.localhost
DocumentRoot /var/www/site1.localhost
DirectoryIndex index.html index.htm index.php
<Directory /var/www/site1.localhost>
AllowOverride All
</Directory>
</VirtualHost>После закачиваю в /var/www/site1.localhost необходимый php-скрипт, передаю его файлы во владение пользователя www-data и группы www-data и перезапускаю апач.
Захожу браузером на http://site1.localhost - и ничего. Зато этот скрипт обнаруживается работающим на http://localhost
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
достаточно удобно использовать a2ensite/a2dissite. bash-completion и автодополнение имён делает.
$ host site1.localhost
?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Apache в Debian Lenny
а как, по-вашему, ваша система узнает, где находится site1.localhost?
следует прописать в /etc/hosts
Код: Выделить всё
127.0.0.1 site1.localUNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Ну, я думал там какой-нибудь дополнительный модуль работает, позволяющий Apache выполнять ещё и роль DNS-сервера.
Допустим у меня в /etc/hosts записано:
Код: Выделить всё
127.0.0.1 sunny-desktop localhost site1.localhost site2.localhost
192.168.1.1 routerЭто значит, что когда я в браузере вбиваю site1.localhost или site2.localhost, простейший DNS-сервер, обеспечиваемый файлом /etc/hosts будет отправлять запросы на 127.0.0.1. Оба виртуальных хоста настроены так, что слушают адрес 127.0.0.1 и порт 80. Так я не понимаю как сервер определит какой сайт выдавать браузеру, если запросы в обоих случаях одинаковые. А что будет выдаваться если в браузере просто вбить 127.0.0.1?
И ещё. Как сделать, чтобы какой-нибудь виртуальный хост слушал только интерфейс ppp0, если адрес на нём динамический?
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Apache в Debian Lenny
Это как это одинаковые? Там же site1 и site2.
вот, почитайте.
Первый загруженный виртуальный хост в апаче.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
запросы будут разные. то, что вы набираете в адресной строке браузера, передаётся http-серверу. который может предпринять разные действия в зависимости от того, что вы там набрали и что у него, сервера, написано в конфигурации.
p.s. подозреваю, что вас несколько сбивают с толку выбранные вами же имена.
измените директивы servername, находящиеся внутри блоков virtualhost на, например, такие:
site1.ru
site2.ru
больше ничего не меняйте, только добавьте в /etc/hosts строку
127.0.0.1 site1.ru site2.ru
и после reload-а апача в браузере у вас должно отобразиться то, что требуется, по обоим адресам http://site1.ru и http://site2.ru
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Понятно, в GET-запросе, кроме адреса запрашиваемого файла, содержится имя хоста. А если клиент отправляет IP-адрес вместо имени хоста или отправляет имя хоста, которого в конфигурации сервера не существует, то клиенту как тут было сказано выдаётся первый загруженный виртуальный хост или хост определённый в общих настройках. А как сделать, чтобы в этом случае выдавалась страница с сообщением об ошибке?
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
вы же сами решение и описали:
вот и сделайте в первом virtualhost-е выдачу сообщения об ошибке.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
chamaco
- Сообщения: 14
- ОС: Debian Lenny 5
Re: Apache в Debian Lenny
вот ТУТ все описано то что вам нужно, только на примере Ubuntu
-
sunny1983
- Сообщения: 357
- ОС: GNU/Linux 4.x (Fedora, Debian)
Re: Apache в Debian Lenny
Появился тут ещё один вопрос по apache2 от Debian.
Не так давно слышал, что держать сайты в /var/www - неверно, потому как /var вообще для этого не предназначен. В /home надо. Что тут на это скажут?
Совершенно не обязательно. Если использовать виртуальные хосты, то там для каждого хоста все прописывается. Хоть в /tmp можно засунуть (:
Не так давно слышал, что держать сайты в /var/www - неверно, потому как /var вообще для этого не предназначен. В /home надо. Что тут на это скажут?
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Apache в Debian Lenny
$ dpkg -S /var/www
yui, htdig, apache2.2-common: /var/www
если же сайты per-user-ные, то, естественно, располагаться они должны у юзеров в хоуме.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог