我是nginx的新手并且现在正在学习它:),我需要一些set proxy_send_timeout的帮助,我需要设置这个,如果url在代理中有'stime'这就是我正在做的事情:
if ($arg_stime != ""){
proxy_send_timeout 15;
proxy_read_timeout 15;
}
但是nginx没有启动并出现以下错误:
4901#0:default.conf中不允许使用“proxy_send_timeout”指令
任何建议,谢谢
祝你好运
Sajid
答案 0 :(得分:3)
您无法在proxy_read_timeout
内使用proxy_send_timeout
/ if
,但有解决方法。
以下是示例代码:
server {
# ...
error_page 555 = @normal;
error_page 556 = @stime;
location / {
if ($arg_stime != '') {
return 556;
}
return 555;
}
location @normal {
proxy_pass ...;
# ...other proxy directives...
}
location @stime {
proxy_pass ...;
# ...other proxy directives...
proxy_send_timeout 15s;
proxy_read_timeout 15s;
}
}
我们使用“If is Evil”中的提示来选择location
将继续我们的请求。