使用NginxconfigurationWindows IIS身份validation

我是ASP.NET Core和Nginx的新手。 如果这个问题看起来蹩脚,请和我一起。

我有一个使用IIS Express托pipe的web api,它使用端口号17770运行在我的本地主机上。我还在使用端口号8070的localhost中安装了Nginx。

目标是对通过Nginx使用IIS Express托pipe的API进行基本身份validation。

这是我的configuration文件。 我想知道如何testing天气configuration工作和validation我的networkingapi。

#user nobody; worker_processes 1; worker_rlimit_nofile 8192; error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; pid logs/nginx.pid; events { worker_connections 1024; accept_mutex off; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 29; client_body_timeout 10; client_header_timeout 10; send_timeout 10; limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s; server_tokens off; tcp_nopush on; tcp_nodelay off; gzip on; gzip_comp_level 9; gzip_http_version 1.0; gzip_disable "MSIE [1-6]\." # Enable GZIP compression for the following MIME types (text/html is included by default). gzip_types # Plain Text text/plain text/css text/mathml application/rtf # JSON application/javascript application/json application/manifest+json application/x-web-app-manifest+json text/cache-manifest # XML application/atom+xml application/rss+xml application/xslt+xml application/xml # Fonts font/opentype font/otf font/truetype application/font-woff application/vnd.ms-fontobject application/x-font-ttf # Images image/svg+xml image/x-icon; # Enables inserting the 'Vary: Accept-Encoding' response header. gzip_vary on; server { listen 8070; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://localhost:17770; # The default minimum configuration required for ASP.NET Core # See https://docs.asp.net/en/latest/publishing/linuxproduction.html?highlight=nginx#configure-a-reverse-proxy-server proxy_cache_bypass $http_upgrade; # Turn off changing the URL's in headers like the 'Location' HTTP header. proxy_redirect off; # Forwards the Host HTTP header. proxy_set_header Host $host; # The Kestrel web server we are forwarding requests to only speaks HTTP 1.1. proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; # Adds the 'Connection: keep-alive' HTTP header. proxy_set_header Connection keep-alive; # Sets the maximum allowed size of the client request body. client_max_body_size 10m; # Sets buffer size for reading client request body. client_body_buffer_size 128k; # Defines a timeout for establishing a connection with a proxied server. proxy_connect_timeout 90; # Sets a timeout for transmitting a request to the proxied server. proxy_send_timeout 90; # Defines a timeout for reading a response from the proxied server. proxy_read_timeout 90; # Sets the number and size of the buffers used for reading a response from the proxied server. proxy_buffers 32 4k; } #location / { # root html; # index index.html index.htm; #} #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} } 

问题解决后,添加下面

 server { listen 8070; server_name localhost; location /swagger { proxy_pass http://localhost:17770/swagger; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }