nginx 中的 url 轉發

nginx 中的 url 轉發

第一次使用nginx。我想轉發任何傳入的請求,如下所示:https://www.example.com/elasticsearchhttp://localhost:9200nginx。我在 nginx 配置的 http 標籤中寫了以下內容。

server {
        listen 3333;
        server_name www.example.com/elasticsearch;
        return 301 $scheme://localhost:9200;
        location / {
                allow 'elasticsearch';
                deny all;
        }
}

不幸的是,當我使用時,nginx -t我收到以下緊急情況:

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;
}

相關內容