Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: настройка apache для производственных условий
 
 автор: kaoz   (21.09.2006 в 20:47)   письмо автору
 
 

в данный момент работаю над сабжем и поставлен в следующие условия:

1. HTTPD 2.2.3 работает под управлением WINDOWS 2003 SERVER
2. Служба httpd запущена так как описано в этой статье
3. У меня нет прав на запуск, остановку и рестарт службы httpd.
4. На сервере должны висеть несколько доменов второго уровня по несколько третьего на каждом. Причем для каждого домена второго и третьего уровня должны быть независимые логи.
6. Количество доменов постепенно растет.
5. Системного администратора часто не бывает на рабочем месте, а если бывает то очень занят.

эти условия накладывают на меня следующие ограничения:
1. необходимо настроить апач так чтобы как можно меньше перезагружать сервер.
2. максимально настроить так чтобы два-три админа могли конфигурировать каждый домен в run-time из внутренней сети.

поработав над сабжем я сделал то что лежит в аттаче.
(сервер настроен на работу в директории "d:\web-server\")
меня очень интересует мнение экспертов по поводу моей работы, а также у меня есть несколько вопросов:
1. Я воспользовался модулем vhost_alias (.admin/.config/modules/httpd.vhost_alias.conf), но проблема этого метода в том, что когда я обращаюсь по адресу domain.ru он редиректит в директорию domain.ru, но когда юзер наберет www.domain.ru он не попадет в domain.ru. Как настроить редирект с www.domain.ru на domain.ru?
2. Этот вопрос возможно решается таким же способом как и первый, но возможно и как-то по другому. В папке .admin/manual/(apache|mysql|php) у меня лежат мануалы к сабжу. Как настроить редирект с any.domain/any/folder(apache|mysql|php)-manual на сабжевые мануалы так чтобы казалось что они работают с этого адреса? И как ограничить доступ всем кроме пользователей внутренней сети?
3. Что делать с директивой апача <Directory> для каждого vhost?
4. Как настроить MIME-типы для xhtml чтоб они выдавали в ответе Content-Type: application/xhtml+xml для файлов *.xhtml, *.html итд? В моей конфиге вроде настроено все правильно, но не работает.
5. Что можно написать(пожалуйста, перечислите все headers) в %{header}o для mod_logconfig?
6. Что делать с rotatelogs и split_logs? Настройка логов Apache ------ротация логов с помощью rotatelogs и резка по vhost Самый лучший способ сразу грузить в базу один лог, а там его уже резать тригерами и процедурами можно легко. Только каким способом это сделать?
7. Я перевел ошибки (404,403, etc). Лежат они в папке .admin/errors/. Пожалуйста проверьте на правильность перевода.
8. Прокоментируйте пожалуйста данную статью. Может что-то можно сделать лучше чем там написано?
9. Какие директивы php можно вынести в .admin/.config/modules/httpd.php.conf через php_admin_(flag|value)?


вроде пока все...

Уважаемые, Гуру! Пожалуйста, не оставьте без внимания данный топик, по моему скромному мнению данная тема будет интересна всем тем кто уже освоил Apache basics skills

   
 
 автор: glsv (Дизайнер)   (22.09.2006 в 17:17)   письмо автору
 
   для: kaoz   (21.09.2006 в 20:47)
 

>1. Я воспользовался модулем vhost_alias (.admin/.config/modules/httpd.vhost_alias.conf), но проблема этого метода в том, что когда я обращаюсь по адресу domain.ru он редиректит в директорию domain.ru, но когда юзер наберет www.domain.ru он не попадет в domain.ru. Как настроить редирект с www.domain.ru на domain.ru?

А какие у Вас инструкции в этом модуле. Ведь можно настроить так, чтобы и www.domain.ru и domain.ru попадали в одну директорию.

>2. Этот вопрос возможно решается таким же способом как и первый, но возможно и как-то по другому. В папке .admin/manual/(apache|mysql|php) у меня лежат мануалы к сабжу. Как настроить редирект с any.domain/any/folder(apache|mysql|php)-manual на сабжевые мануалы так чтобы казалось что они работают с этого адреса?

Что то не очень понятно. Хорошо на примере показать что нужно.

>3. Что делать с директивой апача <Directory> для каждого vhost?
В каком смысле? Писать туда уникальные настройки для виртуального хоста.

> 9. Какие директивы php можно вынести в .admin/.config/modules/httpd.php.conf через php_admin_(flag|value)?
Наиболее интересные директивы приведены в статье
http://www.softtime.ru/article/index.php?id_article=97

   
 
 автор: kaoz   (22.09.2006 в 17:50)   письмо автору
 
   для: glsv (Дизайнер)   (22.09.2006 в 17:17)
 

А какие у Вас инструкции в этом модуле. Ведь можно настроить так, чтобы и www.domain.ru и domain.ru попадали в одну директорию.

path/%0/www.. как настроить так чтобы www.domain.ru попадал в domain.ru, а sub.domain.ru туда не попадал?

Что то не очень понятно. Хорошо на примере показать что нужно.
Например я ввожу следующий URL www.domain.ru/folder/apache-manual или www.xxx.ru/apache-manual или sub.vasia.com/aaa/aaa/aaa/apache-manual (это все домены которые лежат на моем веб-сервере) и попадаю на апачевский мануал который лежит .admin/manual/apache.. если я введу any.domain/any/folder/php-manual или any.domain/any/folder/mysql-manual то соответственно попаду в другие директории .admin/manual/php и .admin/manual/mysql соответственно. смысл понятен?

В каком смысле? Писать туда уникальные настройки для виртуального хоста.
если я буду писать <directory> для каждого домена то мне надо будет перегружать сервак. как сделать так чтобы без перезагрузки для всех директорий с vhost были определенные настройки.
лучше всего глянуть в конфы которые я приложил к топику.

ps: я приложил к топику свои конфы и очень хотелось бы что бы Вы их посмотрели

   
 
 автор: glsv (Дизайнер)   (23.09.2006 в 05:04)   письмо автору
 
   для: kaoz   (22.09.2006 в 17:50)
 

>path/%0/www.. как настроить так чтобы www.domain.ru попадал в domain.ru, а sub.domain.ru туда не попадал?

Да, вы правы. Если нужно выделять поддомены, то лучше наверное делать path/%0/www и настраивать редиректы.

>Например я ввожу следующий URL www.domain.ru/folder/apache-manual или www.xxx.ru/apache-manual или sub.vasia.com/aaa/aaa/aaa/apache-manual (это все домены которые лежат на моем веб-сервере)

А зачем Вам из подпапок вызывать мануалы. Location это не обработать. Нужно будет писать дополнительные редиректы. Пусть вызываются только для

www.domain.ru/apache-manual
www.xxx.ru/apache-manual
sub.vasia.com/apache-manual

А здесь подходит стандартное (вами модифицированное) решение Apache: httpd.manual.conf

> как сделать так чтобы без перезагрузки для всех директорий с vhost были определенные настройки.

А вы пропишите все настройки для корневой директории. И они унаследуются всеми вирт. хостами.

<Directory />
  # Настройки
</Directory>


>ps: я приложил к топику свои конфы и очень хотелось бы что бы Вы их посмотрели
Честно говоря, не по душе такое разбиение конфига. Слишком уж сильно Вы его раздробили...

   
 
 автор: kaoz   (23.09.2006 в 11:44)   письмо автору
 
   для: glsv (Дизайнер)   (23.09.2006 в 05:04)
 

. Если нужно выделять поддомены, то лучше наверное делать path/%0/www и настраивать редиректы.

:) Как их настроить?

А здесь подходит стандартное (вами модифицированное) решение Apache: httpd.manual.conf

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

Честно говоря, не по душе такое разбиение конфига. Слишком уж сильно Вы его раздробили...
Мне кажеться что удобно, я теперь знаю где что искать, но это не так важно... важно что написано в самих конфах :)... я хотел чтобы Вы проверили именно содержимое...


PS:
4. Как настроить MIME-типы для xhtml чтоб они выдавали в ответе Content-Type: application/xhtml+xml для файлов *.xhtml, *.html итд? В моей конфиге вроде настроено все правильно, но не работает.
5. Что можно написать(пожалуйста, перечислите все headers) в %{header}o для mod_logconfig?
7. Я перевел ошибки (404,403, etc). Лежат они в папке .admin/errors/. Пожалуйста проверьте на правильность перевода.
8. Прокоментируйте пожалуйста данную статью. Может что-то можно сделать лучше чем там написано?

   
 
 автор: glsv (Дизайнер)   (24.09.2006 в 07:23)   письмо автору
 
   для: kaoz   (23.09.2006 в 11:44)
 

> :) Как их настроить?
С помощью htaccess. Т.е. вы создаете 2 директории www.domain.ru и domain.ru. В директории www.domain.ru размещается сайт. А в директории domain.ru вы создаете .htaccess c редиректом. Например, с помощью директив mod_rewrite.

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^(.*)$ http://www.test.sv/$1 [R]


> я хотел чтобы Вы проверили именно содержимое...
Хм... так а что именно проверять. Конфигурация у Вас работает - синтаксис правильный. Все другие критерии слишком субъективны. Настройки будут отличаться для каждого сервера.

>5. Что можно написать(пожалуйста, перечислите все headers) в %{header}o для mod_logconfig?
Все заголовки определенные HTTP-протоколом. Их слишком много - поищите в интенете описание протокола http.

>8. Прокоментируйте пожалуйста данную статью. Может что-то можно сделать лучше чем там написано?

Давайте лучше по конкретным проблемам говорить. Писать рецензий на чужие статьи не то занятие, которым следует заниматься в форуме. Да и смысла большого нет, т.к. повторюсь: все условия уникальны. Вопрос слишком неопределенный? Сделать лучше чем что? Чем где? Всегда нужны конкретные ограничительные условия. Иначе получается, как в русской поговорке: она ему про Фому, а он про Ерему.

>7. Я перевел ошибки (404,403, etc). Лежат они в папке .admin/errors/. Пожалуйста проверьте на правильность перевода.

Лучше выложите в форум в текстовом виде (ваш архив я уже стер у себя).

   
 
 автор: kaoz   (25.09.2006 в 14:18)   письмо автору
 
   для: glsv (Дизайнер)   (24.09.2006 в 07:23)
 

С помощью htaccess
А можно сделать так чтоб редирект был один раз прописан в глобальной конфигурации? Тоже самое и для мануалов...

%{header}o; Их слишком много
Мне нужен URL запроса включающий в себя все после символа "?" и возвращаемый в лог при любом статусе ответа.

Ваш архив я уже стер у себя
приложил к ответу архив с текстами ошибок.

С остальным я разберусь...

   
 
 автор: kaoz   (27.09.2006 в 18:11)   письмо автору
 
   для: kaoz   (25.09.2006 в 14:18)
 

...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования