Skip to main content
Version: 3.9.x

Configuration Reference for API7 Gateway Data Plane

The API7 Gateway Data Plane (DP) handles all incoming traffic and applies policies defined by the Control Plane. This page provides a reference for the Data Plane configuration.

Overview

The Data Plane configuration is typically managed via a config.yaml file, which overrides the default settings in config-default.yaml.

Core Configuration

Configure the core worker processes and file limits.

apisix:
worker_processes: auto # Automatically set to number of CPU cores
worker_rlimit_nofile: 1024000 # Max number of open files for each worker process

Listening Ports

Configure the ports for different types of traffic.

apisix:
node_listen:
- port: 9080 # Default HTTP port
- port: 9443 # Default HTTPS port

Proxy Cache Configuration

Enable and configure caching to improve performance and reduce upstream load.

apisix:
proxy_cache:
cache_ttl: 10s
zones:
- name: disk_cache_one
memory_size: 50m
disk_size: 1g
disk_path: "/tmp/disk_cache_one"
cache_levels: "1:2"

Router Mode

Specify the router mode for matching incoming requests to routes.

apisix:
router:
http: radixtree_uri # Default router mode

TLS Settings

Configure TLS behavior for incoming HTTPS requests.

apisix:
ssl:
ssl_protocols: "TLSv1.2 TLSv1.3"
ssl_ciphers: "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"

Status API Endpoint

Expose internal metrics and health check information.

apisix:
status:
enabled: true
port: 7085

Custom Plugin Paths

Load custom-developed plugins into API7 Gateway.

apisix:
extra_lua_path: "/usr/local/apisix/plugins/?.lua"

Environment Variables

Use environment variables to dynamically configure Data Plane nodes.

# In config.yaml, use ${VAR_NAME} syntax
apisix:
node_listen:
- port: ${GATEWAY_PORT}

Next Steps