NginxProxyManager / nginx-proxy-manager

Docker container for managing Nginx proxy hosts with a simple, powerful interface
https://nginxproxymanager.com
MIT License
23.35k stars 2.7k forks source link

Access list working only with "manual" workarounds #3577

Open hans-holgersson opened 9 months ago

hans-holgersson commented 9 months ago

Checklist

Describe the bug Proxy hosts with attached ACLs has strange bahaviour, more exactly ACLs does not work as expected; I will describe two stirngs of steps, because i think the two has common root cuse

Nginx Proxy Manager Version v2.11.1

To Reproduce Steps to reproduce the behavior #1:

  1. create proxy host HOST1
  2. create an ACL
  3. attach ACL to HOST1
  4. disable HOST1
  5. proxy host config is deleted
  6. enable proxy host
  7. proxy host config is created, but it is incorrect, it has a location statement in it like this:

    location / {
    # Access Rules: 0 total
    deny all;
    # Access checks must...
    satisfy all;

(satisfy statement has the value as it was set ACL)

  1. because of the incorrect location the proxy host does not work - getting error 403;

9.1. open edit Proxy Host and simply save it, without any changes, the location statement is written correctly and proxy host works as expected;

9.2. open edit ACL, and simply save it, without any changes, the location statement is written correctly but poxy host does not work correctly because nginx does not pick up the new config: it must be restarted for example with a killall in container console.

Steps to reproduce the behavior #2:

  1. create proxy host (say HOST1)
  2. create ACL (say ACL1)
  3. attach ACL1 to HOST1
  4. disable proxy host HOST1
  5. proxy host config for HOST1 is deleted
  6. nginx is restarted automatically 6.1 HOST1 is not working in browser (it is OK because we disabled it, right?)
  7. open to edit ACL1 and simply save it whithout any modification
  8. proxy host config for HOST1 is generated
  9. nginx is not restarted (HOST1 still not working in browser - it is OK until now)
  10. open to edit some another proxy host (say HOST2), and save it
  11. nginx will be restarted
  12. HOST1 is working in browser (it is NOT OK!!! HOST1 is disabled - see step 4.) because of the existence of the previously generated config file (see setp 8.)

Expected behavior The logic behind the actions generating config files for proxy hosts and reloading nginx should be correlated:

Screenshots

Operating System Rocky Linux 9.3

Additional context browser cache was cleared before single every test step

github-actions[bot] commented 2 months ago

Issue is now considered stale. If you want to keep it open, please comment :+1:

hans-holgersson commented 2 months ago

Is this resolved in the current "latest"?