membphis opened a new issue #2320:
URL: https://github.com/apache/apisix/issues/2320
It seems a bit complicated, we need a smaller test case to find the problem
easily.
```
=== TEST 1: create consumer
--- config
location /t {
content_by_lua_block {
local t = require("lib.test_admin").test
local code, body = t('/apisix/admin/consumers',
ngx.HTTP_PUT,
[[{
"username": "jack",
"plugins": {
"key-auth": {
"key": "auth-one"
}
}
}]]
)
ngx.say(body)
}
}
--- request
GET /t
--- response_body
passed
--- no_error_log
[error]
=== TEST 2: set service
--- config
location /t {
content_by_lua_block {
local t = require("lib.test_admin").test
local code, body = t('/apisix/admin/services/1',
ngx.HTTP_PUT,
[[{
"plugins": {
"key-auth": {}
},
"desc": "new service"
}]]
)
ngx.say(body)
}
}
--- request
GET /t
--- response_body
passed
--- no_error_log
[error]
=== TEST 3: create route with plugin `limit-req`(upstream node contain
domain)
--- config
location /t {
content_by_lua_block {
local t = require("lib.test_admin").test
local code, body = t('/apisix/admin/routes/1',
ngx.HTTP_PUT,
[[{
"plugins": {
"limit-req": {
"rate": 1,
"burst": 0,
"rejected_code": 503,
"key": "remote_addr"
}
},
"upstream": {
"nodes": {
"www.baidu.com:80": 1
},
"pass_host": "node",
"type": "roundrobin"
},
"service_id": 1,
"uri": "/index.html"
}]]
)
if code >= 300 then
ngx.status = code
end
ngx.say(body)
}
}
--- request
GET /t
--- response_body
passed
--- no_error_log
[error]
=== TEST 4: make a test
--- config
location /t {
content_by_lua_block {
local core = require("apisix.core")
local t = require("lib.test_admin")
local headers = {
["User-Agent"] = "curl/7.68.0",
["apikey"] = "auth-one",
}
for i = 1, 3 do
local code, body = t.test('/index.html',
ngx.HTTP_GET,
"",
nil,
headers
)
ngx.say("return: ", code)
end
}
}
--- request
GET /t
--- response_body
return: 200
return: 503
return: 503
--- no_error_log
[error]
--- timeout: 10
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]