YuanSheng Wang
748e33756b
refactory: collect upstream
logic and put them in a single file. ( #1734 )
...
feature: support dynamic upstream in plugin.
here is a mini example in `access` phase of plugin:
```lua
local up_conf = {
type = "roundrobin",
nodes = {
{host = conf.upstream.ip, port = conf.upstream.port, weight = 1},
}
}
local ok, err = upstream.check_schema(up_conf)
if not ok then
return 500, err
end
local matched_route = ctx.matched_route
upstream.set(ctx, up_conf.type .. "#route_" .. matched_route.value.id,
ctx.conf_version, up_conf, matched_route)
return
```
2020-06-22 14:21:42 +08:00
YuanSheng Wang
e38d0a9dc8
change: update resty-radixtree
to version 1.9 . ( #1730 )
2020-06-19 12:24:52 +08:00
YuanSheng Wang
2025337077
test: add test case for route with filter_func
. ( #1683 )
2020-06-11 11:03:02 +08:00
YuanSheng Wang
c9a53abbb9
test: updated style. ( #1606 )
2020-05-22 21:34:58 +08:00
qiujiayu
e7d19ec160
feature: support discovery center ( #1440 )
2020-05-14 23:20:44 +08:00
YuanSheng Wang
89a07efb51
test: reindex by tools reindex
. ( #1519 )
2020-04-28 18:54:14 +08:00
罗泽轩
972840ec96
fix: skip tombstone mark when iterating the global values ( #1517 )
...
Close #1473 .
2020-04-28 17:25:55 +08:00
YuanSheng Wang
0f3310562c
bugfix: init clean_handlers
when add new item from etcd. ( #1412 )
...
fix #1384
2020-04-28 16:01:04 +08:00
nic-chen
a53b4707fb
feat: support saving k8s deployment info to upstream ( #1502 )
...
* feat: support save k8s deployment info to upstream
2020-04-27 10:47:17 +08:00
罗泽轩
ca91387a60
test: fix regex usage in some cases ( #1504 )
2020-04-26 10:43:08 +08:00
YuanSheng Wang
669772f5d5
bugfix: check if the service's upstream node is host. ( #1402 )
2020-04-12 09:31:58 +08:00
YuanSheng Wang
076ecf3ade
bugfix: should not drop the error msg of dns_parse
. ( #1398 )
...
fix #573 .
2020-04-06 11:04:09 +08:00
YuanSheng Wang
51684de77b
bugfix: fail to get the http request header by ngx.var. *
( #1348 )
...
* bugfix: to get the HTTP request header by `ngx.var.*`, we need to convert
the name to lower case with dashes replaced by underscores.
more information:
http://nginx.org/en/docs/http/ngx_http_core_module.html#var_http_
* change: the key should be a string object when fetching a value from `ctx.var`.
* bug(make lint): If the code style is bad, do exit with code 1.
2020-03-27 23:13:46 +08:00
qiujiayu
7baa0abd44
feature: if the dns_resolver
is not set in the file conf/config.yaml
, use the resolver in local DNS. ( #1217 )
...
Fix #1164
2020-03-26 09:48:18 +08:00
YuanSheng Wang
8d745c7441
test: wait a longer time. ( #1323 )
2020-03-23 00:03:51 +08:00
YuanSheng Wang
60b88536fe
bugfix: check the count of upstream valid node. ( #1292 )
2020-03-19 12:07:43 +08:00
Lien
e6804360d1
feature: supported to enable Websocket in upstream
object ( #1051 )
2020-01-14 14:37:24 +08:00
YuanSheng Wang
ea7e783fca
test: style, reformatted by reindex
tools. ( #1045 )
2020-01-14 09:51:05 +08:00
Changwei Hu
9c9be959d3
feature: chash key support more flexible ways ( #1022 )
...
upstream add hash_on, chash key support more flexible ways
routes and services admin api add upstream_conf check
2020-01-10 15:17:17 +08:00
YuanSheng Wang
9e98773fae
change: responsed a better tip when failed to match any route. ( #1013 )
2020-01-03 10:11:37 +08:00
YuanSheng Wang
536f547df8
test: removed temporary data. ( #829 )
2019-11-27 10:05:06 +08:00
YuanSheng Wang
70d3f0b608
bug: fixed bug when no valid upstream node. ( #893 )
2019-11-25 16:46:20 +08:00
罗泽轩
5e85e93eac
change: don't strip square brackets from the IPv6 ( #822 )
...
* change: don't strip square brackets from the IPv6
The OpenResty APIs require the IPv6 literal wrapped inside a square brackets.
Also add tests for IPv6 upstream and update lua-resty-ipmatcher to 0.3.
Fix #816 .
2019-11-11 09:49:22 +08:00
罗泽轩
b67f99b265
chore: fixed typo detected by misspell ( #801 )
2019-11-05 10:58:04 +08:00
Lien
b91d2d36c0
Fix: allow set multiple URI in one route config ( #797 )
...
* route support uris
* fix uris in router with test cases
* remove line has trailing whitespace
* remove line has trailing whitespace
* fix test case
* use new test case for multiple uris
2019-11-04 14:00:52 +08:00
Lien
b119a5c94b
bugfix: support more built-in parameters when set chash balancer ( #775 )
2019-11-03 18:25:51 +08:00
YuanSheng Wang
4ee11806de
travis: supported to run APISIX with Tengine. ( #683 )
2019-11-02 09:05:38 +08:00
YuanSheng Wang
ad376f83f8
change: updated resty-radixtree to v1.5. ( #768 )
...
* feature: supported userdefine lua function in router `radixtree_uri`.
* feature: supported userdefine lua function in router `radixtree_host_uri`.
2019-11-01 09:49:09 +08:00
WenMing
12a2b01b71
license: add ASF header. ( #743 )
2019-10-31 09:27:28 +08:00
YuanSheng Wang
d8b0c2d04c
change: removed router r3. ( #725 )
2019-10-23 12:59:22 +08:00
YuanSheng Wang
d06fbfa13c
change: used lua-resty-jsonschema
instead of lua-rapidjson
. ( #703 )
2019-10-23 12:58:10 +08:00
YuanSheng Wang
6b875cec33
feature(limit-count): supported global limit count with redis server. ( #624 )
2019-10-08 13:15:48 +08:00
Janko
d91be43a4f
change: remove options host
、uri
、schema
、enable_websocket
of upstream object ( #621 )
...
we can rewrite new proxy option by plugin `proxy-rewrite`.
2019-09-27 19:29:59 +08:00
YuanSheng Wang
3f700c5dc1
doc(admin api): route. ( #593 )
...
feature: supported new fields hosts, remote_addrs and vars for router.
fix : #592
2019-09-26 17:47:08 +08:00
YuanSheng Wang
4bb9e6ecb9
test: added new test case about https://github.com/iresty/apisix/pull/586 . ( #587 )
...
* test: added test cases.
2019-09-24 18:26:43 +08:00
YuanSheng Wang
de3c95da21
feature: support consumer bind plugins. ( #544 )
...
* feature: saved consumer plugin information.
* feature: supported to merge plugin with consumer and route.
2019-09-22 06:05:58 +08:00
YuanSheng Wang
894fa584e0
feature: supported to use host name in upstream ( #522 )
...
* feature: supported to config resolver in yaml config file.
* feature: supported domain host for upstream node
2019-09-18 17:41:44 +08:00
YuanSheng Wang
681a42cbed
feature: support upstream nodes with a weight of 0. ( #536 )
...
* test: added test cases.
* doc: updated doc.
current implementation is enough, it supports weight equal 0 now.
2019-09-18 12:00:53 +08:00
Yuansheng
14d5a38fc3
test: renamed base component.
2019-09-10 16:15:59 +08:00
YuanSheng Wang
912685c818
feature: supported to save/delete/change global rule. ( #492 )
...
* feature: supported to load and run global rule.
2019-09-10 15:27:40 +08:00
Yuansheng
4bb40df857
change(test): name style.
2019-09-10 10:07:29 +08:00
YuanSheng Wang
d8d7f018dc
feature: support to load routes from local yaml file. ( #464 )
...
* feature: support to load routes from local yaml file.
2019-09-09 17:42:20 +08:00
YuanSheng Wang
af3454c6ee
change: updated component lua-resty-radixtree
to v0.7 and updated test ( #470 )
...
* change: updated component `lua-resty-radixtree` to v0.7 and updated test
cases.
2019-09-05 17:23:06 +08:00
Yuansheng
9ff1d3fd44
feature: supported to filter route by Nginx variable for router radixtree_uri
.
2019-09-02 15:31:21 +08:00
YuanSheng Wang
ad98a2bfdb
feature: supported to set more upstream options. ( #451 )
...
* feature: supported to set more upstream options.
* feature: supported to enable websocket for upstream.
2019-08-30 10:15:58 +08:00
YuanSheng Wang
1002765831
feature: support to match IPv6 request. ( #341 )
...
* CLI: supported to listen IPv6.
* feature: supported to match route by remote address.
2019-08-24 09:10:11 +08:00
YuanSheng Wang
275cfa8c73
change(router): use radixtree_sni
as default SSL router. ( #419 )
...
* change(router): use `radixtree_sni` as default SSL router.
* change(route): use `radixtree_uri` as default HTTP(S) router.
* luarocks: removed `lua-resty-libr3` component by default.
2019-08-20 22:07:59 +08:00
YuanSheng Wang
560a3115a1
bugfix: avoided to cover the original service configuration. ( #416 )
...
* bugfix: avoided to cover the original service configuration.
2019-08-19 15:26:38 +08:00
YuanSheng Wang
59da5e78e5
bugfix: stop the checker if the config source is changed. ( #406 )
...
* bugfix: stop the checker if the config source is changed.
* test: added new test cases.
2019-08-19 14:02:33 +08:00
YuanSheng Wang
1ef5828090
feature: supported to use router lua-resty-radixtree
. ( #391 )
...
* feature: supported new router `lua-resty-radixtree`.
* change(nginx.conf): sync from CLI.
2019-08-12 09:04:41 +08:00