2012-02-01 2 views
3

Я использую monit на моем экземпляре ec2, и я новичок в nginx. Ниже приведен мой конфигурационный файл nginx:nginx и monit веб-интерфейс - как иметь monit на domain.com/monit и domain.com

server { 
    listen 80; 
    server_name 127.0.0.1; 
    location/{ 
    proxy_pass 127.0.0.1:2812; 
    proxy_set_header Host $host; 
    } 
} 

Так что, если я иду на домен.com, я вижу monit. Как изменить выше код, где я могу видеть monit на domain.com/monit?

Благодаря

ответ

10

Пожалуйста, попробуйте следующее:

server { 
    listen 80; 
    server_name 127.0.0.1; 

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

} 

Пожалуйста, прочитайте больше here о том, как директива место работы в Nginx

+0

Am Я должен создать каталог/USR/местные/Nginx/HTML/Monit? –

+0

Если так ... когда я это сделал, я получаю ошибку 403 –

+0

, если я не добавляю dir. Я получаю эту ошибку при запуске etc/init.d/nginx Запуск nginx: nginx: [появление] недопустимый префикс URL в/usr /local/nginx/conf/nginx.conf:61 –

1

Сергей уже правильно ответил на ваш прямой вопрос. Я думаю, что это также стоит отметить, что это может быть чище, чтобы просто использовать субдомен:

server { 
    listen 80; 
    server_name monit.domain.com; 
    location/{ 
    proxy_pass 127.0.0.1:2812; 
    proxy_set_header Host $host; 
    } 
} 
4

Там статья, в монит-х wiki, как настроить его с Nginx.

Вот мой /etc/nginx/conf.d/monit.conf:

server { 
    listen 80; 
    server_name my.server.name; 

    location /monit/ { 
      allow 127.0.0.1; 
      allow 192.0.0.0/8; 
      deny all; 

      proxy_pass http://127.0.0.1:2812; 
      proxy_set_header Host $host; 
      rewrite ^/monit/(.*) /$1 break; 
      proxy_ignore_client_abort on; 
    } 
} 
Смежные вопросы