Question

Error while restarting nginx: [emerg] "listen" directive is not allowed here

Posted February 11, 2015 24.6k views

I am trying to host two websites, I have done and completed all the steps to enabling the hosting of two websites.
Lastly when i restart the website this is the error I am getting

nginx: [emerg] “listen” directive is not allowed here in /etc/nginx/sites-enabled/domain-name:4
nginx: configuration file /etc/nginx/nginx.conf test failed

# You may add here your
# server {
#    listen 80;
    listen [::]:80;

    root /var/www/domain-name/html;
    index index.html index.htm;

    server_name domain.name www.domain-name;

    location / {
        try_files $uri $uri/ =404;
    }
# }
# statements for each of your virtual hosts to this file

This is how my file loks like

1 comment
  • It looks like you have your Listen directive outside a server { } block. Note that lines starting with a # are commented out and so they are ignored by nginx.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

1 answer

You have server directive commented.

it should be

You may add here your

server { # <<<———- Note this line

listen 80;

listen [::]:80;

root /var/www/domain-name/html;
index index.html index.htm;

server_name domain.name www.domain-name;

location / {
    try_files $uri $uri/ =404;
}

} # <<<———- Note this line

statements for each of your virtual hosts to this file

Submit an Answer