Welcome! Log In Create A New Profile

Advanced

Не видит host

Posted by temi4 
Не видит host
January 21, 2012 02:45PM
Привет простите возможно за глупый вопрос, но помогите разобраться.

Ситуация следующая:
Есть связка nginx apache

Есть настроенный файл конфигурации

server {
listen 80;
server_name kostroma.seo-factor.ru;

location ~ /\.ht {
deny all;
}

location / {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header Host $host;
}


location ~ \.(jpg|gif|png|css|js|ico)$ {
root /home/kostroma.seo-factor.ru/html;
access_log /home/kostroma.seo-factor.ru/log/access_static.log combined;
}
}

Но при обращении по адресу kostroma.seo-factor.ru - открывается default хост из апача

вместо положенного
<VirtualHost *:8080>
ServerName kostroma.seo-factor.ru
ServerAdmin info@seo-factor.ru
ErrorLog /home/kostroma.seo-factor.ru/log/error.log
CustomLog /home/kostroma.seo-factor.ru/log/access.log combined
DocumentRoot /home/kostroma.seo-factor.ru/html/
<Directory "/home/kostroma.seo-factor.ru/html/">
Order allow,deny
Allow from all
AllowOverride All
</Directory>
</VirtualHost>

я так понимаю это потому что не передается proxy_set_header Host $host;?

как можно выловить передается или нет host? или почему nginx (apache) не обрабатывает?

kostroma.seo-factor.ru/temi4.php возвращается нормальный $_SERVER c HTTP_HOST
Re: Не видит host
January 23, 2012 08:54PM
Попробуйте разместить строчку
proxy_set_header Host $host;
до вызова инструкции
proxy_pass http://127.0.0.1:8080/;

Т.е. вот так:
location / {
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080/;
}
Re: Не видит host
January 23, 2012 08:56PM
И уберите конечный слеш в proxy_pass, иначе ваш апач всегда будет выдавать главную страницу
Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 181
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready