С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 14/08/09 в 15:03 |
Версия Апача 2.2. Платформа CentOS 5.2
КОнфигурация следующая: два IP, основной httpd.conf, виртуальные хосты подгружаются в виде отдельных conf файлов из conf.d директории. Проблема:
при рестарте апач выдает:
Код: | [Fri Aug 14 13:57:36 2009] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
[Fri Aug 14 13:57:36 2009] [warn] _default_ VirtualHost overlap on port 80, the first has precedence |
в httpd.conf в конце файла прописана директива NameVirtualHost *:80, каждый файл виртуального хоста начинается с VirtualHost *:80
подскажите, как убрать эти мессаги и чтобы нормально отображались виртуальные хосты? сейчас при открытии каждого хоста пишет 403 Forbidden
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 10.08.07
Сообщения: 17
Рейтинг: 6
|
Добавлено: 14/08/09 в 15:33 |
Пропиши айпишники жестко:
vhosts.conf:
NameVirtualHost 127.0.0.1
И во всех вирт хостах:
<virtualhost 127.0.0.1:80>
[...]
</virtualhost>
Тут пример локал хоста если ты используешь внешний айпи то пропиши его...
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 14/08/09 в 16:00 |
vhosts.conf не используется, его нету. IP внешние жестко прописывал - пишет VirtualHost, вываливается:
Код: | virtualhost xxx.conf overlap with xxx.conf the first has precedence |
У меня два IP внешних, и 6 виртуальных хостов нужно создать под разные сайты.
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 14/08/09 в 17:10 |
В httpd.conf найди и закоментарь
<VirtualHost _default_>
blablabla
...
</VirtualHost>
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 14/08/09 в 17:14 |
Sha: я что дурней паровоза? там все закоментировано
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 14/08/09 в 17:24 |
Надо смотреть файлы конфигов.
У тя точно NameVirtualHost есть в конфиге?
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 14/08/09 в 17:33 |
в hosts1.conf (где прописаны виртуальные хосты) написано первой строчкой - NameVirtualHost xxx.xxx.xxx.xxx:80
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 14/08/09 в 18:38 |
То у тя звёздочка, то конкретные IP.
Если NameVirtualHost *:80, то
<VirtualHost *:80>
</VirtualHost>
<VirtualHost *:80>
</VirtualHost>
Проверь чтобы VirtualHost с IP нигде не затесался.
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 14/08/09 в 22:23 |
с виртуальными хостами разобрался, теперь с 403 ошибкой проблема осталась:
есть три хоум директории, принадлежат трем разным юзерам из разных групп. проблемя бля в том что один из них нормально пашет, а другие выдают бля 403, и хоть кол на голове им чеши... Я уже понять не могу почему эта дряная 403 выползает.
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 11.06.03
Сообщения: 1266
Рейтинг: 950
|
Добавлено: 15/08/09 в 12:39 |
А апач от какого юзера запускается?
|
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 15/08/09 в 13:41 |
На каждый виртуалхост желательно явно происывать диру DocumentRoot:
<Directory /home/username/domains/domain.com/htdocs>
Options FollowSymLinks Includes
Order Allow,Deny
Allow from all
AllowOverride All
</Directory>
Sample: http://pentarh.com/conf/linux/httpd-vhost-sample.conf
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 16/08/09 в 17:11 |
апач запускается под свои юзером apache.
докментрут прописан. не, щас все виртуалхосты работают нормально, перенес со старого сервака блог на WP, странность какая-то с ним: открываешь главную - вместо index.php просто пустая страница. далее, открываешь site.com/wp-admin - админка начинает грузится, после этого начинает грузится главная нормально... честно говоря, я в растерянности, в логах усе хораша... может кто-то сталкивался?
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 16/08/09 в 20:29 |
разобрался с пустой страницей в WordPress. со старого хоста в папке supercache остались файлы прокешированные, грохнул, кеш создался наново - все завелось.
Pentarh: вот ты в своем примере пишешь
Код: | php_admin_value upload_tmp_dir /home/username/domains/domain.com/tmp
php_admin_value session.save_path /home/username/domains/domain.com/tm |
это для повышения секьюрити или как? без этого, я так понимаю, используется системная /tmp
есть у меня еще один хост, там не адалатовый проект, на друпале 5.2, после переноса начала писать в лог
Код: | Request exceeded the limit of 10 internal redirects due to probable configuration error. |
по смыслу понятно, что где еть бесконечный loop в .htaccess, но вот где:
Код: | #
# Apache/PHP/Drupal settings:
#
# Protect files and directories from prying eyes.
<FilesMatch "(\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)|code-style\.pl|Entries.*|Repository|Root|Tag|Template)$">
Order allow,deny
</FilesMatch>
# Don't show directory listings for URLs which map to a directory.
Options -Indexes
# Follow symbolic links in this directory.
Options +FollowSymLinks
# Customized error messages.
ErrorDocument 404 /index.php
# Set the default handler.
DirectoryIndex index.php
# Override PHP settings. More in sites/default/settings.php
# but the following cannot be changed at runtime.
# PHP 4, Apache 1.
<IfModule mod_php4.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
</IfModule>
# PHP 4, Apache 2.
<IfModule sapi_apache2.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
</IfModule>
# PHP 5, Apache 1 and 2.
<IfModule mod_php5.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
</IfModule>
# Requires mod_expires to be enabled.
<IfModule mod_expires.c>
# Enable expirations.
ExpiresActive On
# Cache all files for 2 weeks after access (A).
ExpiresDefault A1209600
# Do not cache dynamically generated pages.
ExpiresByType text/html A1
</IfModule>
# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on
# Rewrite current-style URLs of the form 'index.php?q=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>
# $Id: .htaccess,v 1.81 2007/01/09 09:27:10 dries Exp $ |
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|
Криптопохуист
С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019
|
Добавлено: 17/08/09 в 09:58 |
megreep писал: |
Pentarh: вот ты в своем примере пишешь
Код: | php_admin_value upload_tmp_dir /home/username/domains/domain.com/tmp
php_admin_value session.save_path /home/username/domains/domain.com/tm |
это для повышения секьюрити или как? без этого, я так понимаю, используется системная /tmp
|
Я обычно создаю песочницу домена так:
/path/domain.com
/path/domain.com/tmp
/path/domain.com/cgi-bin
/path/domain.com/htdocs
При этом open_basedir будет установлен в значение /path/domain.com, чтобы из скрипта не были доступны папки выше по дереву. Но в пхп есть такие вещи как upload_tmp_dir и session.save_path, которые обычно смотрят в /tmp и находятся выше по дереву. По этому я tmp переношу в песочницу домена.
Но это не дает защиты от шелл-инструкций вида system("cat /etc/passwd"). По этому, особенно для вордпресса, я прописываю вот что. Нужно отключить все шелл-вызовы для скриптов, исполняемых в апаче, но оставить их для CLI.
Не буду расписывать, т.к. я это уже расписал:
http://www.pentarh.com/wp/2008/10/13/wordpress-security/
http://www.pentarh.com/wp/2008/10/13/php-disable-functions/
После этого очень трудно будет через уязвимость в скриптах пролезть на сервер.
megreep писал: |
есть у меня еще один хост, там не адалатовый проект, на друпале 5.2, после переноса начала писать в лог
Код: | Request exceeded the limit of 10 internal redirects due to probable configuration error. |
по смыслу понятно, что где еть бесконечный loop в .htaccess, но вот где:
|
У тебя идет бесконечный внутренний редирект по RewriteRule. Скорей всего файл DOCUMENTROOT/index.php не существует, или лежит не в том месте. Или просто DocumentRoot прописан неправильно.
|
|
|
|
С нами с 29.05.09
Сообщения: 466
Рейтинг: 231
|
Добавлено: 17/08/09 в 12:23 |
спасибо за мини-лекцию почитал, оценил, разобрался, сделал у себя
|
|
Не завидуй, но добивайся сам. Расти, когда хочется умереть.
|
0
|
|
|