LINUX.ORG.RU
ФорумAdmin

Просветите по виртхостам Apache и nginx


0

1

Есть сервер на CentOS5, Apache 2.2.3 и nginx 1.0.0

Фронтэндом стоит nginx, apache рулит за ним. Сервер на русониксе, у них еще есть Plesk, заметно усложняющий работу с виртхостами.

Сервер настраивал не я, поэтому даже не знаю куда копать со следующей ситуацией:

есть domain.com
есть некий виртуальный хост include.domain.com

при этом, когда идешь по ссылке domain.com/foo, при условии, что foo нету в документруте domain.com, она отображается с include.domain.com

грубо говоря, когда-то, каким-то образом, сделали «новую версию сайта» и «старую версию сайта» на одном домене о_О

domain.com/foo1 - папка с нового сайта
domain.com/foo2 - папка со старого сайта
domain.com/bar1 - папка со старого сайта
domain.com/bar2 - папка с нового сайта

как их так перепрели - ума не приложу, символьных ссылок нету, .htaccess (mod_rewrite) пустые на эту тему. Если я создам левый файл в include.domain.com и полезу на domain.com/left.file - он мне его показывает!

на все файлы со «старого сайта» еще какой-то враппер вешает <DIV> с рекомендацией перейти на новый.

куда копать? никак не могу отследить, как они вообще вылазят.

используется VPS с двумя виртуальными адаптерами, заменены на 000.000 и 000.111 (000 слушает nginx и проксирует на apache 111)

вирт хост с nginx:
server {
listen 89.000.000.000:80;
server_name domain.com http://www.domain.com;
root /var/www/vhosts/domain.com/httpdocs;
location / {
proxy_pass http://89.000.000.111;
}
gzip on;
gzip_comp_level 7;
gzip_types text/plain text/xml application/xhtml+xml image/x-icon text/css text/javascript application/javascript application/x-javascript text/x-js text/ecmascript application/ecmascript text/vbscript text/fluffscript image/svg+xml appli$

location ~* \.(jpg|jpeg|gif|png|css|js)$ {
expires max;
add_header Last-Modified: $date_gmt;
}
}


то что у apache:
virt.conf:
<Directory /var/www/vhosts/domain.com/httpdocs>
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/shared:/var/www/vhosts/domain.com/httpdocs:/tmp»
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/shared:/var/www/vhosts/domain.com/httpdocs:/tmp»
php_admin_value error_log «/var/www/vhosts/domain.com/statistics/logs/php_error_sid.log»
</IfModule>
Options -Includes -ExecCGI
</Directory>

httpd.include по двум доменам:
<VirtualHost 89.253.000.111:80>
ServerName domain.com:80
ServerAlias http://www.domain.com
UseCanonicalName Off
SuexecUserGroup domainuser psacln
DocumentRoot /var/www/vhosts/domain.com/httpdocs
CustomLog /var/www/vhosts/domain.com/statistics/logs/access_log plesklog
ErrorLog /var/www/vhosts/domain.com/statistics/logs/error_log
<IfModule mod_userdir.c>
UserDir /var/www/vhosts/domain.com/web_users
</IfModule>
ScriptAlias /cgi-bin/ /var/www/vhosts/domain.com/cgi-bin/
<IfModule mod_ssl.c>
SSLEngine off
</IfModule>
<Directory /var/www/vhosts/domain.com/httpdocs>
<IfModule mod_perl.c>
<Files ~ (\.pl$)>
SetHandler perl-script
PerlHandler ModPerl::Registry
Options ExecCGI +FollowSymLinks
allow from all
PerlSendHeader On
</Files>
</IfModule>
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/httpdocs:/tmp:/var/www/vhosts/domain.com/shared»
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/httpdocs:/tmp:/var/www/vhosts/domain.com/shared»
# php_admin_value open_basedir «/var/www/vhosts/domain.com/httpdocs:/tmp»
</IfModule>
Options +Includes +ExecCGI +FollowSymLinks
</Directory>
<Directory /var/www/vhosts/domain.com/web_users>
<IfModule sapi_apache2.c>
php_admin_flag engine off
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine off
</IfModule>
</Directory>
Include /var/www/vhosts/domain.com/conf/vhost.conf
</VirtualHost>


<VirtualHost 89.253.000.111:80>
ServerName include.domain.com:80
ServerAlias include.domain.ru
SuexecUserGroup domainuser psacln
DocumentRoot /var/www/vhosts/domain.com/subdomains/include/httpdocs
CustomLog /var/www/vhosts/domain.com/statistics/logs/access_log plesklog
ErrorLog /var/www/vhosts/domain.com/statistics/logs/error_log
ScriptAlias /cgi-bin/ /var/www/vhosts/domain.com/subdomains/include/cgi-bin/
<IfModule mod_ssl.c>
SSLEngine off
</IfModule>
<Directory /var/www/vhosts/domain.com/subdomains/include/httpdocs>
<IfModule mod_perl.c>
<Files ~ (\.pl$)>
SetHandler perl-script
PerlHandler ModPerl::Registry
Options ExecCGI +FollowSymLinks
allow from all
PerlSendHeader On
</Files>
</IfModule>
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/subdomains/include/httpdocs:/tmp»
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir «/var/www/vhosts/domain.com/subdomains/include/httpdocs:/tmp»
</IfModule>
Options +Includes +ExecCGI +FollowSymLinks
</Directory>
Include /var/www/vhosts/domain.com/subdomains/include/conf/vhost.conf
</VirtualHost>


virt.conf и httpd.include - это привет к Plesk, они тупо инклюдятся в httpd.conf стандартном, так что это именно рабочие.

Есть идеи куда копать?

★★★★★

В общем разобрался... эти архаровцы сделали 404.php в котором с пачкой фильтров:

$content = file_get_contents("http://include.domain.com/$_SERVER[REQUEST_URI]");

BaBL ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.