代码之家  ›  专栏  ›  技术社区  ›  Mahesh H Viraktamath

我可以在Nginx中创建一个“私有”位置吗?

  •  0
  • Mahesh H Viraktamath  · 技术社区  · 6 年前

    我是否可以创建一个nginx config中任何其他位置都可以访问的位置,而不能直接从外部访问?

    这是我的配置-

    server {
      listen *:80;
      server_name 127.0.0.1;
    
      location = /auth {
          set $query '';
          if ($request_uri ~* "[^\?]+\?(.*)$") {
             set $query $1;
          }
          # add_header X-debug-message "Parameters being passed $is_args$args" always;
          proxy_pass http://127.0.0.1:8080/auth?$query;
      }
    
      location /kibana/ {
         rewrite ^/kibana/(.*) /$1 break;
         proxy_pass http://127.0.0.1:5601;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection 'upgrade';
         proxy_set_header Host $host;
         proxy_set_header X-Forwarded-For $remote_addr;
         proxy_set_header  X-Real-IP  $remote_addr;
         proxy_cache_bypass $http_upgrade;
         auth_request /auth;
      }
    
      location ~ (/app/|/app/kibana|/bundles/|/kibana4|/status|/plugins|/ui/|/api/|/monitoring/|/elasticsearch/) {
         internal;
         proxy_pass http://127.0.0.1:5601;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
         proxy_set_header Host $host;
         rewrite /kibana4/(.*)$ /$1 break;
      }
    
      error_page 404 /404.html;
        location = /40x.html {
      }
    
      error_page 500 502 503 504 /50x.html;
        location = /50x.html {
      }
    }
    

    internal; 它抛出了一个404错误,没有它的工作正常。

    实际上,我需要用nginx保护kibana,但无论如何,我最终都会在没有任何身份验证的情况下公开它。

    0 回复  |  直到 6 年前
    推荐文章