| master_process on; |
| |
| worker_processes 1; |
| worker_cpu_affinity auto; |
| |
| error_log logs/error.log warn; |
| pid logs/nginx.pid; |
| |
| worker_rlimit_nofile 20480; |
| |
| events { |
| accept_mutex off; |
| worker_connections 10620; |
| } |
| |
| worker_rlimit_core 500M; |
| working_directory /tmp/cores/; |
| |
| worker_shutdown_timeout 3; |
| |
| http { |
| lua_package_path "$prefix/deps/share/lua/5.1/?.lua;$prefix/lua/?.lua;/usr/share/lua/5.1/?.lua;;"; |
| lua_package_cpath "$prefix/deps/lib64/lua/5.1/?.so;$prefix/deps/lib/lua/5.1/?.so;/usr/lib64/lua/5.1/?.so;;"; |
| |
| lua_shared_dict plugin-limit-req 10m; |
| lua_shared_dict plugin-limit-count 10m; |
| lua_shared_dict plugin-limit-conn 10m; |
| lua_shared_dict prometheus-metrics 10m; |
| |
| lua_ssl_verify_depth 5; |
| ssl_session_timeout 86400; |
| |
| lua_socket_log_errors off; |
| |
| resolver ipv6=off local=on; |
| resolver_timeout 5; |
| |
| lua_http10_buffering off; |
| |
| log_format main '$remote_addr - $remote_user [$time_local] $http_host "$request" $status $body_bytes_sent $request_time "$http_referer" "$http_user_agent" $upstream_addr $upstream_status $upstream_response_time'; |
| |
| access_log logs/access.log main buffer=32768 flush=3; |
| |
| open_file_cache max=1000 inactive=60; |
| client_max_body_size 0; |
| |
| server_tokens off; |
| more_set_headers 'Server: APISIX web server'; |
| |
| upstream apisix_backend { |
| server 0.0.0.1; |
| balancer_by_lua_block { |
| apisix.balancer_phase() |
| } |
| |
| keepalive 32; |
| } |
| |
| init_by_lua_block { |
| require "resty.core" |
| apisix = require("apisix") |
| apisix.init() |
| } |
| |
| init_worker_by_lua_block { |
| apisix.init_worker() |
| } |
| |
| server { |
| listen 9080; |
| |
| include mime.types; |
| |
| location = /apisix/nginx_status { |
| internal; |
| access_log off; |
| stub_status; |
| } |
| |
| location /apisix/admin { |
| allow 127.0.0.0/24; |
| content_by_lua_block { |
| apisix.admin() |
| } |
| } |
| |
| location / { |
| set $upstream_scheme 'http'; |
| set $upstream_host $host; |
| set $upstream_upgrade ''; |
| set $upstream_connection ''; |
| set $upstream_uri ''; |
| |
| access_by_lua_block { |
| apisix.access_phase() |
| } |
| |
| proxy_http_version 1.1; |
| proxy_set_header Host $upstream_host; |
| proxy_set_header Upgrade $upstream_upgrade; |
| proxy_set_header Connection $upstream_connection; |
| proxy_set_header X-Real-IP $remote_addr; |
| proxy_pass_header Server; |
| proxy_pass_header Date; |
| proxy_pass $upstream_scheme://apisix_backend$upstream_uri; |
| |
| header_filter_by_lua_block { |
| apisix.header_filter_phase() |
| } |
| |
| log_by_lua_block { |
| apisix.log_phase() |
| } |
| } |
| } |
| } |