NGINX Ajax主体后面的Razor页面已删除

NGINX Ajax主体后面的Razor页面已删除,nginx,razor-pages,Nginx,Razor Pages,我的剃刀页面PathBase=sbm 当我试图在cshtml页面中调用ajax时,@Url.page(“/Index”,“Login”)将转换为/sbm?handler=Login 在我把它放在NGINX后面之前,它大部分时间都是有效的。下面的Ajax调用将删除主体 $.ajax({ url: "/sbm?handler=Login", // auto generated from @Url.Page("/Index", "Login&q

我的剃刀页面PathBase=sbm

当我试图在cshtml页面中调用ajax时,
@Url.page(“/Index”,“Login”)
将转换为
/sbm?handler=Login

在我把它放在NGINX后面之前,它大部分时间都是有效的。下面的Ajax调用将删除主体

$.ajax({
    url: "/sbm?handler=Login", // auto generated from @Url.Page("/Index", "Login")
    type: "POST",
    data: { id: 'test' },  // **This is missing from my request body**
    headers: { "RequestVerificationToken": $('input[name="__RequestVerificationToken"]').val() }
})
如果我硬编码
“/sbm/Index?handler=Login”
而不是使用
@Url.Page(“Index”,“Login”)

我真的不知道为什么NGINX会剥掉身体。下面是我的NGINX配置

#user  nobody;
worker_processes  1;

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


http {
include       mime.types;
#types {
#   text/html  aspx;
#}
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  0;
keepalive_timeout  65;

#gzip  on;

server {
    listen                    *:443 ssl;
server_name               example.com;
    ssl_certificate           /Shared/SSL/mybundle.crt;
    ssl_certificate_key       /Shared/SSL/private.key;
    ssl_protocols             TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers               "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_ecdh_curve            secp384r1;
    ssl_session_cache         shared:SSL:10m;
    ssl_session_tickets       off;
    ssl_stapling              on; #ensure your cert is capable
    ssl_stapling_verify       on; #ensure your cert is capable

    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;

    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    location /sbm/ {
        proxy_pass  http://127.0.0.1:5012/sbm/;

    #proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    #proxy_set_header   X-Forwarded-Proto $scheme;
        expires -1;
    }

我找到了答案。我必须拆下sbm后面的/才能使其工作