IAD получил эпик фэйл
8 февраля, 2011
Правил конфиги нгинкса и обнаружил, что пропала вся статика напрочь, на всех доменах, кроме того, к которому подвязывал зону РФ.
Вроде обычный конфиг:
----вырезано----
server
{
listen айпишнег:80;
server_name site.ru www.site.ru мухрю.xn--p1ai;
location /
{
client_max_body_size 8M;
client_body_buffer_size 128k;
proxy_pass http://айпишнег:81/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarder_for;
}
location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$
{
root /var/www/site.ru/;
}
}
server
{
listen айпишнег:80;
# server_name .my;
location /
{
client_max_body_size 8M;
client_body_buffer_size 128k;
proxy_pass http://апача:81/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarder_for;
}
location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$
{
root /var/www/$host/;
}
} |
но ошибка заключается в том, что если нгинкс не находит правило для полученного запроса, то передаёт запрос первому серверу!
Если в запросе нет заголовка «Host» или же в нём указано имя, неописанное ни в одном сервере, слушающем на адресе и порту, на которые пришёл запрос, то запрос будет обслужен сервером, у которого первым описаны эти адрес и порт.
Об этом нужно помнить.
Решение — поменять блоки server местами



admin
домены на кирилице — тот ещё маразм.
Уже можно потихоньку работать. Но маразм конечно да.
Да не бОльший маразм, чем все остальные домены. Кириллица+.(com|net) непонятно для чего а полностью на кириллице это нормально.
Кстати, мелкософтовые продукты TMG и IIS понимают кирилические домены без преобразования в мухрю форму, в отличие от апачи, где алиас нужно писать в музрю форме. Мелочь, но приятно =)
Они просто без палева их конвертят 🙂
Я ЗНАЛ! :))))
ну вот — бывает и так
дада, это всё грязные проделки M$-ru 😀