Subdomian configuration not working (ubuntu + nginx)

June 6, 2015 1.4k views
Nginx DNS Getting Started

Hi, I know I am doing something wrong. But I simply cannot figure it out. Here's my DNS zone file:

$ORIGIN goalchieve.com.
$TTL 1800
goalchieve.com. IN SOA ns1.digitalocean.com. hostmaster.goalchieve.com. 1433621271 10800 3600 604800 1800
goalchieve.com. 1800 IN NS ns1.digitalocean.com.
goalchieve.com. 1800 IN NS ns2.digitalocean.com.
goalchieve.com. 1800 IN NS ns3.digitalocean.com.
goalchieve.com. 1800 IN A 46.101.0.109
www.goalchieve.com. 1800 IN CNAME goalchieve.com.
*.goalchieve.com. 1800 IN CNAME goalchieve.com.

when I run
root@Goalchieve:/etc/nginx# ping rc.goalchieve.com
ping: unknown host rc.goalchieve.com

Could you help me ?

5 Answers

Remove *.goalchieve.com. and add rc.goalchieve.com. in A for 46.101.0.109
Did you add a new configuration file for your Subdomain? If not, just ask and I write a how to for you

Thanks! Could you write how should set the configuration ? I will be grateful

@radoslawnoga

Create a new directory mkdir /var/www/html/rc.goalchieve.com

Create a new configuration :

touch /etc/nginx/sites-available/rc.goalchieve.com
nano /etc/nginx/sites-available/rc.goalchieve.com

Paste this (right click)

##
# 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;
    listen [::]:80;

    root /var/www/html/rc.goalchieve.com;

    # Add index.php to the list if you are using PHP
    index index.html index.htm;

    server_name rc.goalchieve.com;

    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
        autoindex on;
    }

    # 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;
#   }
#}

Save it (CTRL X)

Link the file to sites-enabled

sudo ln -s /etc/nginx/sites-available/rc.goalchieve.com /etc/nginx/sites-enabled/rc.goalchieve.com

Grant Permission sudo chown -R www-data:www-data /var/www/html//var/www/html/rc.goalchieve.com

Reboot server service nginx restart

PS: Sorry for the short tutorial i wrote this on a mobile phone, no way for details. If you want them just ask :-)
PPS: If you need PHP just ask and i explain how to install it for nginx

@radoslawnoga I made a little mistake

Link the file to sites-enabled:

 sudo ln -s  /etc/nginx/sites-available/rc.goalchieve.com /etc/nginx/sites-enabled/

PS: Show some love if it works by clicking the hearth

When I try to restart nginx :

* Restarting nginx nginx                                                                                                                               nginx: [warn] conflicting server name "rc.goalchieve.com" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "rc.goalchieve.com" on [::]:80, ignored
nginx: [warn] conflicting server name "rc.goalchieve.com" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "rc.goalchieve.com" on [::]:80, ignored
Have another answer? Share your knowledge.