Closed zhaosuqi closed 4 years ago
你这样的提问方式 是认真的嘛?
配置文件贴进来就长这样,第一次提问,不好意思
配置文件贴进来就长这样,第一次提问,不好意思
你可以尝试改成这样看看:
allow_admin: # http://nginx.org/en/docs/http/ngx_http_access_module.html#allow
- 127.0.0.0/24 # If we don't set any IP list, then any IP access is allowed by default.
- 192.168.0.0/16
我用的1.2镜像,存在同样问题。 跟着下面的教程做的: https://github.com/apache/incubator-apisix/blob/master/doc/getting-started-cn.md
403的问题,我已经解决了,需要设置 allow_admin: 中请求端的ip(比如我的宿主机ip 172.18.0.1/24)。
但是我遇到另外的问题,请求admin不通,报 no route to host: [root@e55e6d0dc93b apisix]# curl "http://127.0.0.1:9080/apisix/admin/services/" -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' {"error_msg":"no route to host"}
@zhaosuqi I make a test right now, your config.yaml
is invalid.
when I try to call make init
, I got an error message like this:
$ make init
./bin/apisix init
lua: /home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:40: bad argument #1 to 'ssub' (string expected, got table)
stack traceback:
[C]: in function 'string.sub'
/home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:40: in upvalue 'startswith'
/home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:468: in upvalue 'parseseq'
/home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:661: in upvalue 'parsemap'
/home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:721: in upvalue 'parsedocuments'
/home/resty/git/membphis/apisix/deps/share/lua/5.1/tinyyaml.lua:746: in function 'tinyyaml.parse'
(...tail calls...)
./bin/apisix:649: in field '?'
./bin/apisix:865: in main chunk
[C]: in ?
make: *** [Makefile:75: init] Error 1
但是我遇到另外的问题,请求admin不通,报 no route to host: [root@e55e6d0dc93b apisix]# curl "http://127.0.0.1:9080/apisix/admin/services/" -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' {"error_msg":"no route to host"}
Have you enabled a separate port for admin api?
https://github.com/apache/incubator-apisix/blob/master/conf/config.yaml#L56
但是我遇到另外的问题,请求admin不通,报 no route to host: [root@e55e6d0dc93b apisix]# curl "http://127.0.0.1:9080/apisix/admin/services/" -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' {"error_msg":"no route to host"}
Have you enabled a separate port for admin api?
https://github.com/apache/incubator-apisix/blob/master/conf/config.yaml#L56
我搞通了。
原因比较傻:我本地无法访问etcd的镜像()。所以我改成了bitnami的etcd镜像,这个镜像需要对应修改yaml文件。 这样改就可以了:
etcd:
if you are in the mainland China, please use Azure China mirror:
image: gcr.azk8s.cn/etcd-development/etcd:v3.3.12
image: bitnami/etcd:3.3.15
image: gcr.io/etcd-development/etcd:v3.3.12
command: /usr/local/bin/etcd --advertise-client-urls http://0.0.0.0:2379 --listen-client-urls http://0.0.0.0:2379
restart: always volumes:
- ./etcd_data:/etcd_data
- ./etcd_conf/etcd.conf.yml:/opt/bitnami/etcd/conf/etcd.conf.yml environment: ETCD_DATA_DIR: /etcd_data ALLOW_NONE_AUTHENTICATION: 'yes' ports:
- "2379:2379/tcp"
- "2380:2380/tcp" networks: apisix: ipv4_address: 172.18.5.10
之前获取镜像失败的日志:
docker pull gcr.azk8s.cn/etcd-development/etcd:v3.3.12 Error response from daemon: error parsing HTTP 403 response body: invalid character '<' looking for beginning of value: "\r\n
403 Forbidden \r\n
我要关闭了,问题自己康复了,我下午再看就不报错了,什么都没改,后续部署再看看会不会再次出现
把admin api的端口,换一个端口即可,区分9080即可
点击左侧所有菜单界面可以显示,但是报403错误,nginx日志错误信息如下:
172.16.56.54 - - [29/May/2020:04:34:33 +0000] 11.11.3.36:9080 "GET /apisix/admin/services HTTP/1.1" 403 552 0.000 "http://11.11.3.36:9080/apisix/dashboard" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36 Edg/83.0.478.37" - - -
conf/config.yaml