nginx获得304状态响应,而不是所需的200

时间:2018-12-08 15:34:58

标签: nginx

请帮助获得200状态(无需缓存)而不是304的响应。 禁用SSL时,我得到200,但是使用SSL时,我得到304。

nginx / 1.15.2

我试图将proxy_max_temp_file_size设置为0;但这没有帮助

响应示例

[08/Dec/2018:14:58:44 +0000] "GET /api/board HTTP/2.0" 
time_local="08/Dec/2018:14:58:44 +0000" protocol="HTTP/2.0" status="304" 304 0 
"https://xxx" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like 
Gecko) Chrome/70.0.3538.77 Safari/537.36" "-" 

默认配置:

server { 
listen 80 default_server; 
listen [::]:80 default_server; 
server_name _; 
return 301 https://$host$request_uri; 
} 

server { 
listen 443 ssl http2; 
listen [::]:443 ssl http2; 
root /usr/share/nginx/html; 
index index.html index.htm; 
ssl_certificate /etc/nginx/certs/cert.pem; 
ssl_certificate_key /etc/nginx/certs/key.pem; 
ssl_session_timeout 1d; 
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; 
ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES"; 
ssl_prefer_server_ciphers on; 
add_header Strict-Transport-Security max-age=15768000; 
client_max_body_size 8M; 

location /socket.io/ { 
proxy_http_version 1.1; 
proxy_set_header Upgrade $http_upgrade; 
proxy_set_header Connection "upgrade"; 
proxy_pass "http://192.168.0.1:8080"; 
} 

location /location/ { 
proxy_set_header Host $host; 
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header X-Forwarded-Proto https; 
proxy_set_header X-Forwarded-For $remote_addr; 
proxy_set_header X-Forwarded-Host $remote_addr; 
proxy_http_version 1.1; 
proxy_set_header Upgrade $http_upgrade; 
proxy_set_header Connection "upgrade"; 
proxy_pass "http://192.168.0.4:8888"; 
proxy_connect_timeout 36000s; 
proxy_send_timeout 36000s; 
proxy_read_timeout 36000s; 
send_timeout 36000s; 
} 

location / { 
proxy_pass "http://192.168.0.4:8888"; 
} 

}    

p.s。

此配置对我有帮助

# kill cache
add_header Last-Modified $date_gmt;
add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
if_modified_since off;
expires off;
etag off;

0 个答案:

没有答案