Solved

Name-based hosting...serveralias goes to external site with same name

Posted on 2014-12-05
15
80 Views
Last Modified: 2014-12-08
OK, I have been away from this project for a couple of years, so am a bit rusty.  But...

Below is an extract from my httpd-vhosts.conf file (and it is included in httpd-vhosts.conf).

When I enter www.refactor.com in my browser, I expect my named host to take preference over the real external site of that name, but it doesn't.  Where am I going wrong please?

# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "E:/xampp/htdocs"
    <Directory "E:/xampp/htdocs">
	Options +Indexes FollowSymLinks +ExecCGI +Includes
	AllowOverride AuthConfig FileInfo
	Order allow,deny
	Allow from all
	</Directory>
</VirtualHost>

## My first domain ##

<VirtualHost *:80>
    ServerName myfirstdomain.com
    ServerAlias www.myfirstdomain.com
    DocumentRoot "E:/xampp/htdocs"
</VirtualHost>

## My second domain for refactoring the FOBG site ##

<VirtualHost *:80>
    ServerName refactor
    ServerAlias www.refactor.com
    DocumentRoot "E:/xampp/htdocs2"
    <Directory "E:/xampp/htdocs2">
	Options +Indexes FollowSymLinks +ExecCGI +Includes
	AllowOverride AuthConfig FileInfo
	Order allow,deny
	Allow from all
	</Directory>
</VirtualHost>

Open in new window

0
Comment
Question by:colinspurs
  • 8
  • 7
15 Comments
 
LVL 57

Expert Comment

by:giltjr
Comment Utility
What do you mean by "the real external site of that name"?

If everything is setups correctly you see see whatever is located at "E:/xampp/htdocs2"

1) You need named virtual host configured correctly.
2) The host name www.refactor.com needs to point to the IP address that Apache is listening on.

So, if you do "nslookup www.refactor.com" does it return the IP address that your server is listening on?
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
Thanks for replying.

I want to see see whatever is located at "E:/xampp/htdocs2".  Instead I see www.refactor.com (actually it redirects to http://refactor.com.au/

So everything can't be set up correctly.

 I think we need to go back to basics here...how do I know what IP address Apache is listening on?
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
I don't think it's set to specific IP addresses?
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 0.0.0.0:80
#Listen [::]:80
Listen 80

Open in new window

0
 
LVL 57

Expert Comment

by:giltjr
Comment Utility
Again, what IP address does www.refactor.com  reslove to?
     Issue command: nslookup www.refactor.com


What is the IP address of your Apache server?  
If Windows issue the command: ipconfig
If *inx issue the command : ifconfig
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
www.refactor.com resolves to67.222.132.198

 IP address of my Apache server 192.168.0.3
0
 
LVL 57

Expert Comment

by:giltjr
Comment Utility
O.K., then your Apache server is not the web  server that is hosting www.refactor.com.

Are you trying to setup a test site for www.refactor.com?

If so, then in your hosts files you can code:

192.168.0.3 www.refactor.com

Your hosts file is MOST likely located at C:\windows\system32\drivers\etc.  Depending on which version of Windows you are running you will have to edit as Admin.  Just remember if you want to go to the "real" www.refactor.com, you will need to comment out the line above in your hosts file.
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
I cannot find the hosts file.  There is no etc folder.

Yes I am trying to set up a test environment which I have successfully done before.

I am running Windows 7.
0
Complete Microsoft Windows PC® & Mac Backup

Backup and recovery solutions to protect all your PCs & Mac– on-premises or in remote locations. Acronis backs up entire PC or Mac with patented reliable disk imaging technology and you will be able to restore workstations to a new, dissimilar hardware in minutes.

 
LVL 57

Expert Comment

by:giltjr
Comment Utility
You need admin authority on your PC.  Issue the command:

cd "%windir%\system32\drivers\etc"

and then look for the file hosts.  There is no suffix on the hosts file, the full file name is just plain hosts
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
Ok thanks...all my test environments are there, with 127.0.0.1  as IP address...I'll change them all to 192.168.0.3

Would my IP address ever change?

# localhost name resolution is handled within DNS itself.
#      127.0.0.1       localhost
      127.0.0.1       refactor
      127.0.0.1       oop
      127.0.0.1       cljs
      127.0.0.1       fobgnew
      127.0.0.1       cl
0
 
LVL 57

Expert Comment

by:giltjr
Comment Utility
Unless you have Apache on your PC to specifically listen on 192.168.0.3 you can leave 127.0.0.1 (local loopback address).

I would assume your PC gets its address using DHCP, which mean your 192.168.0.3 address could change, so I would continue to use 127.0.0.1.
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
So it's a puzzle then....  hosts is correct, httpd-vosts.conf and httpd.conf all look in order...what's my next step d'you think?
0
 
LVL 57

Expert Comment

by:giltjr
Comment Utility
Hosts does NOT look correct to me.  You have

127.0.0.1       refactor

That means the host name "refactor" will reslove to 127.0.0.1.  You need:

127.0.0.1 www.refactor.com
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
You always surprise me with the speed of your response!

Ok, I think I have it now...hosts resolves to the server name, not serveralias as I thought.  So I don't need serveralias at all?
0
 
LVL 57

Accepted Solution

by:
giltjr earned 500 total points
Comment Utility
I don't know about that. Servalias does have it place.  However typically I would expect to see something more like:

    ServerName refactor.com
    ServerAlias www.refactor.com
   
Or

    ServerName www.refactor.com
    ServerAlias refactor.com

You should never have just a "single" level name coded for ServerName or ServerAlias.   You should have either the domain name or a fully qualified host name.   In the above examples the domain name is refactor.com and the host name is www, the fully qualified host name is www.refactor.com.  

The way you had "refactor" coded in your hosts file, that would be a host name.  When Windows, actually any OS, goes to lookup that host name it would look in the hosts file first.  If it is not in the host files it will start appending domain names to the end based on the domain name search order list.  In Windows these are option in the DNS tab on Advanced networking configuration of the NIC.

With the way  you HAD your hosts file configured you should have been able to ether http://refactor and get your test page, but anything else would not have matched anything in your hosts file, so it would have go through normal DNS resolution.
0
 
LVL 3

Author Comment

by:colinspurs
Comment Utility
Ok, thanks.  All fine now.  I really appreciate your help and patience.
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

In my time as an SEO for the last 2 years and in the questions I have assisted with on here I have always seen the need to redirect from non-www urls to their www versions. For instance redirecting http://domain.com (http://domain.com) to http…
If you've heard about htaccess and it sounds like it does what you want, but you're not sure how it works... well, you're in the right place. Read on. Some Basics #1. It's a file and its filename is .htaccess (yes, with a dot in the front). #…
This video discusses moving either the default database or any database to a new volume.
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now