Enable access without "www." on Ubuntu

6,168

Solution 1

serverAlias needs to be title caps (ServerAlias) and you need to add whatever sites you want this virtual host to respond to on this line, separated by a space like so:

ServerAlias www.mydomain.gov.br mydomain.gov.br something.mydomain.gov.br

Make sure that you have a A host record for mydomain.gov.br (or a CNAME) so that it can be resolved properly. Also I'm not sure if you've ran a2ensite yet, you didn't say whether it was working at all or not.

EDIT Apparently you need step-by-step instructions on how to change your DNS records. However, unless you're going to post your actual domain (and we can look up your NS records), we have no idea who controls your DNS or how to change them.

To figure this out without posting your actual domain, you can do:

dig ns mydomain.gov.br

This should return some records like ns1.somecompany.com ns2.somecompany.com, etc.

Does "somecompany.com" ring a bell? If not, who registered this domain? Can you contact them? They likely have access to the nameservers or know someone who has access to the nameservers. You can also look up the WHOIS records and you may see an email address there that's familiar to you.

Solution 2

This is definitely a DNS problem; you should of course configure your web server as appropriate for your needs, but if "mydomain.gov.br" doesn't point to it, you're not going anywhere :-)

Solution 3

Your Apache config looks ok to me. The DNS record for mydomain.gov.br should point at the same IP address as the www. one, unless Apache is also listening on this IP address - but if it were then your site would probably work.

You need to check your DNS service to figure out where the record for the www. free record is being defined.

Share:
6,168

Related videos on Youtube

Thiago Belem
Author by

Thiago Belem

Updated on September 17, 2022

Comments

  • Thiago Belem
    Thiago Belem over 1 year

    I want to enable the access to my site without the "www." prefix. I tried to insert this in my /etc/apache2/sites-available file:

    <VirtualHost *:80>
            serverName mydomain.gov.br
            serverAlias www.mydomain.gov.br
            ServerAdmin [email protected]
    
            DocumentRoot /var/www/mydomain/
    
            ... (lot's of other configs)
    </VirtualHost>
    

    But this isn't working... :(

    When I dig the domains I get different IP results:

    www.mydomain.gov.br - 201.143.203.67

    mydomain.gov.br - 201.143.203.65

    • gravyface
      gravyface about 14 years
      You haven't fixed your DNS records yet?
    • gravyface
      gravyface about 14 years
      I've edited my answer with tips on how to change your DNS records.
    • Mircea Vutcovici
      Mircea Vutcovici about 14 years
      Do you have those IPs on network interfaces? can you paste the output /sbin/ip address show ?
  • Thiago Belem
    Thiago Belem about 14 years
    And how do I create this A record or CNAME?
  • Thiago Belem
    Thiago Belem about 14 years
    @gravyface - This is not made locally (I mean, in the server.. it's a dedicated server)?
  • gravyface
    gravyface about 14 years
    All I'm saying is that if your dedicated server has the following IP address (11.22.33.44), you need to make sure that mydomain.gov.br resolves to that IP address on whatever machine you're trying to access your website.
  • mctylr
    mctylr about 14 years
    The A record and CNAME refer to DNS entries for the given domain (mydomain.gov.br in your question). How to create them depends upon which DNS server the site is using (e.g. named/bind, PowerDNS, djbdns, dbndns).
  • mctylr
    mctylr about 14 years
    So both host mydomain.gov.br and host www.mydomain.gov.br should return the IP address of the server, if DNS is correctly configured.
  • Thiago Belem
    Thiago Belem about 14 years
    @mctylr I checked the resolved IP of both domains and they're goin to differents IPs... This can be a badly router configuration (on the server, ofc)?
  • gravyface
    gravyface about 14 years
    No, this would be wrong in your nameservers.