nginx를 처음 사용합니다. 다음과 같은 들어오는 요청을 nginx를 사용하여 전달하고 https://www.example.com/elasticsearch
싶습니다 http://localhost:9200
. http 태그의 nginx 구성에 다음을 썼습니다.
server {
listen 3333;
server_name www.example.com/elasticsearch;
return 301 $scheme://localhost:9200;
location / {
allow 'elasticsearch';
deny all;
}
}
불행하게도 내가 사용할 때 nginx -t
나는 다음과 같은 emerg를 받습니다:
nginx: [emerg] invalid parameter "elasticsearch" in /etc/nginx/nginx.conf:79
답변1
server_name
매개변수에는 서버의 URI가 아닌 서버 이름만 포함됩니다.
다음과 같이 다시 작성할 수 있습니다.
server {
listen 3333;
server_name www.example.com;
location /elasticsearch {
return 301 $scheme://localhost:9200;
}
}
구성에는 명시되어 있지만 질문에서는 그렇지 않은 다른 위치에 대한 액세스를 거부하려면 location
위의 블록 외에 이 블록을 사용할 수 있습니다.
location / {
deny all;
}