问题描述
直接使用浏览器访问我们的后台接口,在未登陆的情况下接口返回的状态码都是401,而且返回的路径是/user/requireLogin,但是现在我们前端配置了nginx来解决跨域的问题,调用接口居然返回了200, 我想让nginx也同样返回401这个应该怎么做??
问题出现的平台版本及自己尝试过哪些方法
我们的nginx是最新的1.14,平台是nginx
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 10.67.1.102:80;
server_name 10.67.1.102;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 10.67.1.102:443;
server_name 10.67.1.102;
client_max_body_size 20m;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass_header Set-Cookie;
proxy_pass_header P3P;
proxy_buffering off;
proxy_intercept_errors off;
ssl on;
ssl_certificate ./server.crt;
ssl_certificate_key ./server.key;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
location /WebApi/jjjj/static/ {
alias E:/svn/06_code/dist/ZJYD/;
index index.html index.htm;
}
#接口转发
location /jjjj/api/v1 {
add_header 'Access-Control-Allow-Origin' '$http_origin';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, PUT, POST, DELETE, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'Content-Type,*';
proxy_pass https://10.67.1.101/jjjj/api/v1/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location = /user/requireLogin {
alias html/401.html;
}
}
}
你期待的结果是什么?实际看到的错误信息又是什么?
我现在就想让nginx返回和直接访问后台接口一样的状态码,这个应该怎么做??一点头绪都没有
试试这个