Назад | Перейти на главную страницу

Преобразователь домена NginX

Установлен nginx и Apache на порту 8080. Проблема в том, что я создаю сайт для производственного домена (скажем, mysite.com) и все настроено для этого домена. Я меняю свой файл хостов Windows на перенаправление mysite.com на IP-адрес сервера, и он работал хорошо ... до того, как я установил nginx. Nginx сам разрешает домены и (очевидно) не может разрешить домен mysite.com

Журнал говорит:

2012/02/07 07:35:29 [error] 11758#0: *1 mysite.com could not be resolved (110: Operation timed out), client: 89.112.11.xx, server: myssite.com, request: "GET / HTTP/1.1", host: "mysite.com"

Что ж, тогда я пытаюсь изменить файл hosts на своем сервере. Я делаю это в / etc / hosts:

127.0.0.1 mysite.com

Ладно, попробуем! Если это вступит в силу, по крайней мере, wget сочтет это правильным, верно? Поскольку у меня Apache на 8080-м порту, я могу получить главную страницу:

wget mysite.com

Он загружает правильную страницу. Это означает, что / etc / hosts работает хорошо.

Но ngnix все равно не решает эту проблему! Даже после перезапуска сервера. Зачем? У него есть свой резолвер что ли? Как заставить работать?

вы можете использовать dnsmasq на 127.0.0.1 для разрешения из / etc / hosts и поместить преобразователь 127.0.0.1 в конфигурацию nginx

nginx не использует hosts файл для разрешения домена. Если вы используете доменные имена для listen, proxy_pass или fastcgi_pass, вы можете использовать IP-адрес или localhost вместо:

listen localhost:80;
server_name mysite.com;
...
location / {
    proxy_pass http://localhost:8080;
}