nginx reverse proxy not working
-
I got this error line
ln: failed to create symbolic link ‘./domainname.com’: File exists (possibly because I've created this file before, with the same content)
I did sudo service nginx reload and got this message reload: Unknown instance:
So I tried start in place of reload, this message appeared nginx stop/pre-start, process 7332
Yet my domain is not up.
http://domainname.com:4567 worked
but http://domainname.com returned an error page.
-
Missing a "s" somewhere
-
I don't recall modifying that file.
I've purged and reinstalled nginx before so I don't think what I've done before purging would matter.
I did "sudo nano default" while in directory "/etc/nginx/sites-available/"
I can't find any "erver" without an s in that file. Am I looking at the right file?
Here's the content of that file.
## # You should look at the following URL's in order to grasp a solid understanding # of Nginx configuration files in order to fully unleash the power of Nginx. # http://wiki.nginx.org/Pitfalls # http://wiki.nginx.org/QuickStart # http://wiki.nginx.org/Configuration # # Generally, you will want to move this file somewhere, and start with a clean # file but keep this around for reference. Or just disable in sites-enabled. # # Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples. ## # Default server configuration # server { listen 80 default_server; listen [::]:80 default_server; # SSL configuration # # listen 443 ssl default_server; # listen [::]:443 ssl default_server; # # Note: You should disable gzip for SSL traffic. # See: https://bugs.debian.org/773332 # # Read up on ssl_ciphers to ensure a secure configuration. # See: https://bugs.debian.org/765782 # # Self signed certs generated by the ssl-cert package # Don't use them in a production server! # # include snippets/snakeoil.conf; root /var/www/html; # Add index.php to the list if you are using PHP index index.html index.htm index.nginx-debian.html; server_name _; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # include snippets/fastcgi-php.conf; # # # With php5-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php5-fpm: # fastcgi_pass unix:/var/run/php5-fpm.sock; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # Virtual Host configuration for example.com # # You can move that to a different file under sites-available/ and symlink that # to sites-enabled/ to enable it. # #server { # listen 80; # listen [::]:80; # # server_name example.com; # # root /var/www/example.com; # index index.html; # # location / { # try_files $uri $uri/ =404; # } #}
-
It turned out I was looking at the wrong default file, it's supposed to be in sites-enabled.
I filled in the missing s, and ran sudo nginx -t and got the following message
nginx: [warn] conflicting server name "domainname.com" on 0.0.0.0:80, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulmy site is still not up on the domain
what is this conflict it's telling me?
======
Edit: Ok, so I've removed all files in sites-enabled and sites-available. Started over. Created a file in sites-available again. Then ln -s it to sites-enabled.
All [warn] lines disappeared. Configuration of nginx.conf was successful.
Then I tried sudo service nginx reload. Got the same message: reload: Unknown instance:
=====
Edit: I've rebooted my droplet. Reloading nginx was successful. My site is now up on the domain.
Thanks guys!