{"id":23666683,"url":"https://github.com/hanadalee/ngx_http_access_control_module","last_synced_at":"2026-02-07T08:31:39.036Z","repository":{"id":269527763,"uuid":"889355187","full_name":"HanadaLee/ngx_http_access_control_module","owner":"HanadaLee","description":"A custom Nginx module for advanced access control based on variables.","archived":false,"fork":false,"pushed_at":"2026-02-02T03:18:59.000Z","size":19,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-02T12:14:40.003Z","etag":null,"topics":["nginx","nginx-module"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HanadaLee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-16T06:40:46.000Z","updated_at":"2026-02-02T03:19:03.000Z","dependencies_parsed_at":"2024-12-24T08:19:28.168Z","dependency_job_id":"cf22404f-83a2-4f7a-af70-ffa21b173fbe","html_url":"https://github.com/HanadaLee/ngx_http_access_control_module","commit_stats":null,"previous_names":["hanadalee/ngx_http_access_control_module"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/HanadaLee/ngx_http_access_control_module","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HanadaLee%2Fngx_http_access_control_module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HanadaLee%2Fngx_http_access_control_module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HanadaLee%2Fngx_http_access_control_module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HanadaLee%2Fngx_http_access_control_module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HanadaLee","download_url":"https://codeload.github.com/HanadaLee/ngx_http_access_control_module/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HanadaLee%2Fngx_http_access_control_module/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29190185,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T07:37:03.739Z","status":"ssl_error","status_checked_at":"2026-02-07T07:37:03.029Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nginx","nginx-module"],"created_at":"2024-12-29T07:33:56.172Z","updated_at":"2026-02-07T08:31:39.030Z","avatar_url":"https://github.com/HanadaLee.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ngx_http_access_control_module\n\n# Name\n\nA custom Nginx module for advanced access control based on variables.\n\n# Table of Content\n\n- [ngx\\_http\\_access\\_control\\_module](#ngx_http_access_control_module)\n- [Name](#name)\n- [Table of Content](#table-of-content)\n- [Status](#status)\n- [Synopsis](#synopsis)\n- [Installation](#installation)\n- [Directives](#directives)\n  - [access](#access)\n  - [access\\_rules\\_inherit](#access_rules_inherit)\n  - [access\\_deny\\_status](#access_deny_status)\n- [Author](#author)\n- [License](#license)\n\n# Status\n\nThis Nginx module is currently considered experimental. Issues and PRs are welcome if you encounter any problems.\n\n# Synopsis\n\n```nginx\nserver {\n    listen 80;\n    server_name example.com;\n\n    # Allow access if $var2 is non-empty and not zero. The allowed request will no longer match the remaining access control rules.\n    access allow $var1;\n\n    # Deny access if $var1 is non-empty and not zero\n    access deny $var2;\n\n    location / {\n        # Your other configurations\n    }\n\n    location /restricted {\n        # Override deny status code\n        access_deny_status 404;\n\n        # Deny access if $var3 is non-empty and not zero\n        access deny $var3;\n    }\n}\n```\n\n# Installation\n\nTo use theses modules, configure your nginx branch with `--add-module=/path/to/ngx_http_access_control_module`.\n\n# Directives\n\n## access\n\n**Syntax:** *access [allow|deny] variable;*\n\n**Default:** *-*\n\n**Context:** *http, server, location*\n\nThe access directive defines an access control rule based on a variable. The variable is evaluated at runtime, and if it is non-empty and not zero, the rule is considered matched.\n\nThe `allow` parameter allows access if the condition is met. The allowed request will no longer match the remaining access control rules.\nThe `deny`  parameter denies access if the condition is met.\n\n## access_rules_inherit\n\n**Syntax:** *access_rules_inherit on | off | before | after;*\n\n**Default:** *access_rules_inherit on;*\n\n**Context:** *http, server, location*\n\nAllows altering inheritance rules for the values specified in the `access` directive. By default, the standard inheritance model is used.\n\nThe `before` parameter specifies that the rules inherited from the previous configuration level will be applied before the rules specified in the current location block.\n\nthe `after` parameter specifies that the rules inherited from the previous configuration level will be applied after the rules specified in the current location block.\n\nThe `off` parameter cancels inheritance of the values from the previous configuration level.\n\n## access_deny_status\n\n**Syntax:** *access_deny_status code;*\n\n**Default:** *access_deny_status 403;*\n\n**Context:** *http, server, location*\n\nSets the HTTP status code to return in response when access is denied by a deny rule.\n\n# Author\n\nHanada im@hanada.info\n\n# License\n\nThis Nginx module is licensed under [BSD 2-Clause License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanadalee%2Fngx_http_access_control_module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhanadalee%2Fngx_http_access_control_module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanadalee%2Fngx_http_access_control_module/lists"}