Commit Graph

80 Commits

Author SHA1 Message Date
tzssangglass
ac21146c35
fix: deal with etcd grants permissions with a different prefix than the one used by apisix, etcd will forbidden (#4154) 2021-04-29 09:27:54 +08:00
Yuelin Zheng
93a9feb9b5
feat: support to fetch balancer ip/port from ctx.var (#4109) 2021-04-22 21:52:49 +08:00
罗泽轩
022d7527c2
feat: new way to cache ctx.var (#3915) 2021-04-11 13:43:25 +08:00
罗泽轩
d6f3f7ae02
test: show how to fetch special cookie which is not supported by Nginx (#4011)
Fix #4009

Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-04-09 21:43:27 +08:00
罗泽轩
86e168e711
test: enable master-worker mode by default (#3927) 2021-03-29 23:38:07 +08:00
罗泽轩
92b352862a
feat: support mTLS with etcd (#3905) 2021-03-25 23:40:40 +08:00
罗泽轩
7ae302034a
test: use longer timeout for internet DNS query (#3872)
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-03-22 10:05:50 +08:00
Yuelin Zheng
be2e68401c
chore: the route_name and service_name in ctx should remain different (#3831) 2021-03-16 15:26:37 +08:00
John Bampton
4ebccafbdc
chore: fix spelling (#3253) 2021-03-14 22:53:34 +08:00
罗泽轩
20ee3c1ecb
feat: add a safe exit to disable sync conf during start (#3812) 2021-03-12 14:53:58 +08:00
罗泽轩
83537ad158
feat: load etcd configuration when apisix starts (#3799)
Fix #3370
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-03-12 09:09:19 +08:00
罗泽轩
2401ad5043
fix: don't use port 80 for all schemes (#3544)
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-02-20 16:01:00 +08:00
罗泽轩
18909a2a0b
feat: allow disabling search option in resolv.conf (#3609)
Also disable it in the test to avoid occassional DNS query timeout.
2021-02-20 15:38:45 +08:00
大可
5f4e8df42d
feat: support listen http2 with plaintext (#3547) 2021-02-19 09:04:48 +08:00
罗泽轩
e1dbe2c4a4
feat: support DNS AAAA record (#3484) 2021-02-05 09:00:20 +08:00
罗泽轩
563b259a5a
feat: switch resolver to lua-resty-dns-client (#3442)
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-02-02 09:07:40 +08:00
罗泽轩
1b3e547c5b
feat: resolve var supports ${...} format (#3320)
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2021-01-18 22:23:15 +08:00
YuanSheng Wang
151d74fd9c
chore: enable plugin server-info by default. (#3170)
Co-authored-by: spacewander <spacewanderlzx@gmail.com>
2021-01-04 20:18:21 +08:00
罗泽轩
357a2efa68
feat: expose schema via control API (#3092)
Close #3022
2020-12-23 16:40:19 +08:00
罗泽轩
fd2db606a9
feat: rewrite handwriting validation with jsonschema (#3021)
Fix #2967. Some plugins can't be rewritten, so I have to keep them.

Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2020-12-18 16:55:23 +08:00
Yuelin Zheng
bdd00e1f55
feat: support ctx.var to get service_name and route_name (#3036)
close #2982
2020-12-17 22:26:25 +08:00
罗泽轩
d16ac7a021
feat: share etcd client (#2932)
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2020-12-15 20:18:25 +08:00
John Bampton
511f52a856
refactor: remove trailing whitespace (#3040) 2020-12-15 08:56:20 +08:00
罗泽轩
cc9c1bb090
ci: check misspell (#3011)
Fix #3009
2020-12-10 23:05:36 +08:00
罗泽轩
85a84fb191
fix: avoid unnecessary type check and support var in local_conf (#2990)
Also merge bundle of repeated code.

Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2020-12-10 15:48:47 +08:00
罗泽轩
79075000aa
feat(fault-injection): support Nginx variable in abort.body (#2986)
Fix #2827
2020-12-08 13:18:34 +08:00
罗泽轩
97ed426b4e
fix: refresh cached header when we set request header (#2917) 2020-12-07 21:50:31 +08:00
罗泽轩
1b8dca96ac
feat: increase the delay before resync (#2977)
It improves the behavior under #2899.
2020-12-07 20:20:31 +08:00
罗泽轩
44855ec1a7
ci: make it work under OpenResty 1.19 (#2768) 2020-11-30 10:32:35 +08:00
罗泽轩
1c211ff7b1
fix: validate plugin configuration in the DP (#2856)
Fix #2834
2020-11-28 13:29:00 +08:00
罗泽轩
1ad90f7206
chore: sort default plugin list for easier search (#2824) 2020-11-25 14:11:24 +08:00
罗泽轩
1a24c2af39
refactor(consumer): remove id and use username only (#2679)
Close #2656
Close #2653
Close #2651
2020-11-18 17:44:40 +08:00
Yousa
53e2d5387f
fix: remove upstream 'Server' header info. fix #2714 (#2731)
fix #2714
2020-11-18 13:15:31 +08:00
罗泽轩
8983a8dd27
fix(etcd): avoid getting with prefix (#2772)
Fix #2771.
2020-11-17 21:28:55 +08:00
罗泽轩
39879630ae
fix: reload plugin when plugin attribute is cahnged (#2704)
Close #2655
2020-11-13 00:23:30 +08:00
罗泽轩
1ea912d752
fix: use same config-default.yaml for different environments (#2663)
Close #2634.
2020-11-10 19:07:46 +08:00
Alex Zhang
188355494d
feat: hide APISIX version from Server header. (#2639)
Sometimes expose version is dangerous, which can be utilized by
malicious crackers when there are some security bugs in that version.
2020-11-07 00:04:28 +08:00
Alex Zhang
5191374545
feat: support TLS connection with etcd. (#2548)
Support the TLS connection when communicating with etcd cluster. We added a configuration item to custom the certificate verification. Whether to setup TLS connection or not depends on the endpoints' scheme, for instance, when endpoints are:

```
etcd:
  host:
    - "https://127.0.0.1:2379"
    - "https://127.0.0.1:3379"
```

APISIX will originate TLS connection automatically, and the Server Name Indication extention will be set by the endpoint host (`127.0.0.1` in above case). Note by default APISIX will verify the certificate, close the verification in configuration explicitly if you want to bypass it.

```
etcd:
  tls:
    verfiy: false
```
2020-11-03 13:53:39 +08:00
罗泽轩
432c954a74
fix: plugin hot reload should work on node (#2430) 2020-11-03 13:46:24 +08:00
罗泽轩
bf44ed124d
change: make lrucache lock optional (#2575) 2020-11-02 16:47:32 +08:00
Peter Zhu
68cf301ed4
chore: move try_read_attr function into table.lua (#2257) (#2566)
Co-authored-by: YuanSheng Wang <membphis@gmail.com>
2020-10-31 09:13:20 +08:00
Alex Zhang
71dcf367d3
change: read 8bytes from /dev/urandom as the random seed for better randomness (#2437) 2020-10-19 14:53:48 +08:00
Firstsawyou
d1729c0af3
feat: In dns parse, when the parameter resolvers is empty, the local dns is used as resolvers by default (#2424)
fix #2422
2020-10-17 13:44:53 +08:00
YuanSheng Wang
251625d8ab
bugfix: set random seed for each worker process at init_worker phase, only init phase is not enough. (#2357) 2020-10-09 16:39:49 +08:00
L
720d135fd2
fix: Update error message when Route doesn't exist (#2304)
Fixes #2302

Co-authored-by: YuanSheng Wang <membphis@gmail.com>
2020-10-06 11:48:52 +08:00
YuanSheng Wang
50c99a5e3b
bugfix: create etcd object in xpcall, this step may fail (#2312)
* bugfix: create the etcd object in `xpcall`, it may fail, the return values of `etcd.new` should be `res, err`.

fix issue: #2310

1. The old process, if creating etcd fails, etcd data will no longer be synchronized. We need to create the etcd object in xpcall.
2. the return value should be res, err of etcd.new.

* test: old test case is unstable, should delete some checkpoint which is wrong.
2020-10-05 10:22:28 +08:00
Firstsawyou
dd5a36e207
feat: support to fetch consumer_name or consumer_id via ctx.var (#2333) 2020-10-04 19:16:29 +08:00
Shuyang Wu
e0ee327c08
bugfix: use etcd:watchcancel to reduce connections in etcdv3 (#2299) 2020-09-28 18:05:47 +08:00
Firstsawyou
b1770d4ca7
feat: support to fetch route_id and service_id via ctx.var (#2326) 2020-09-27 22:29:59 +08:00
罗泽轩
70bd9802c5
bugfix: avoid overwriting Vary header in cors plugin (#2271) 2020-09-27 16:43:09 +08:00