To create new wiki account, please join us on #znc at freenode and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.

Reverse Proxy

From ZNC
Jump to navigation Jump to search

If you want to use a subdomain for the ZNC-Webinterface, you have to create a Reverse Proxy with your webserver.

Note: this works for HTTP traffic only. IRC clients must connect to ZNC directly.

Without setting TrustedProxy in your config you will only see or ::1 for each web-access in your logs => You can't block specific IP's. If you want to see the real IP's you have to add this to your config:

TrustedProxy =
TrustedProxy = ::1


As subdomain[edit]

server {
    listen 80;
    listen [::]:80;
    server_name znc.domain.tld;

    location / {
        proxy_pass http://[::1]:6667/;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

As subdirectory[edit]

Set URIPrefix of the Listener in ZNC to /znc/

server {
    location /znc/ {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Note there is no / after the port number.


$HTTP["host"] =~ "^(sub\.domain\.com)$" {
  proxy.server = ( "" => ( ( "host" => "", "port" => 6667 ) ) )