mirror of
https://github.com/bunkerity/bunkerized-nginx
synced 2023-12-13 21:30:18 +01:00
64 lines
1.8 KiB
Text
64 lines
1.8 KiB
Text
server {
|
|
|
|
# reason variable
|
|
set $reason '';
|
|
|
|
server_name _;
|
|
|
|
# HTTP listen
|
|
{% if LISTEN_HTTP == "yes" +%}
|
|
listen 0.0.0.0:{{ HTTP_PORT }} default_server {% if USE_PROXY_PROTOCOL == "yes" %}proxy_protocol{% endif %};
|
|
{% endif %}
|
|
|
|
# include core and plugins default-server configurations
|
|
include /etc/nginx/default-server-http/*.conf;
|
|
|
|
# include custom default-server configurations
|
|
include /opt/bunkerweb/configs/default-server-http/*.conf;
|
|
|
|
log_by_lua_block {
|
|
|
|
local utils = require "utils"
|
|
local logger = require "logger"
|
|
local datastore = require "datastore"
|
|
local plugins = require "plugins"
|
|
|
|
logger.log(ngx.INFO, "LOG", "Log phase started")
|
|
|
|
-- List all plugins
|
|
local list, err = plugins:list()
|
|
if not list then
|
|
logger.log(ngx.ERR, "LOG", "Can't list loaded plugins : " .. err)
|
|
list = {}
|
|
end
|
|
|
|
-- Call log_default method of plugins
|
|
for i, plugin in ipairs(list) do
|
|
local ret, plugin_lua = pcall(require, plugin.id .. "/" .. plugin.id)
|
|
if ret then
|
|
local plugin_obj = plugin_lua.new()
|
|
if plugin_obj.log_default ~= nil then
|
|
logger.log(ngx.INFO, "LOG", "Executing log_default() of " .. plugin.id)
|
|
local ok, err = plugin_obj:log_default()
|
|
if not ok then
|
|
logger.log(ngx.ERR, "LOG", "Error while calling log_default() on plugin " .. plugin.id .. " : " .. err)
|
|
else
|
|
logger.log(ngx.INFO, "LOG", "Return value from " .. plugin.id .. ".log_default() is : " .. err)
|
|
end
|
|
else
|
|
logger.log(ngx.INFO, "LOG", "log_default() method not found in " .. plugin.id .. ", skipped execution")
|
|
end
|
|
end
|
|
end
|
|
|
|
-- Display reason at info level
|
|
local reason = utils.get_reason()
|
|
if reason then
|
|
logger.log(ngx.INFO, "LOG", "Client was denied with reason : " .. reason)
|
|
end
|
|
|
|
logger.log(ngx.INFO, "LOG", "Log phase ended")
|
|
|
|
}
|
|
|
|
}
|