From: rockdale on
Hi, all:

Hope somebody can solve this problem for me.

We are migrating 3 asp website into IIS 6.0 on a server 2003. we do
not want to create 3 website since we do not want to acquire different
ports or ip for these websites. SO we create 3 virtual directory under
the default website, but we got problems because the asp pages include
common code in other asp files and the original developer using
include virtual to include the common code asp files.

The error I got is :

HTTP 500.100 - Internal server error: ASP error.
Internet Information Services

--------------------------------------------------------------------------------

Technical Information (for support personnel)

Error Type:
Active Server Pages, ASP 0126 (0x80004005)
The include file '/top.asp' was not found.
/website_test/index.asp, line 1

Browser Type:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR
1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR
3.5.21022)


The source code in the index.asp is <!-- #INCLUDE VIRTUAL="/top.asp" --
>
and the top.asp is under the same directory with index.asp.

-----------------------------------

If I create website then it works fine, the top.asp is found and the
page shows properly.

I know one way is the change all include virtual to include file, but
that's too much workload considering the I am not original developer
and they have the include virtual everywhere.

I kind know why this error occurred, it is because I create the
virtual directory, so the include virtual="/top.asp" should changed to
include virtual="/website_test/top.asp" since the wwwroot is not the
root anymore. or my understanding is wrong.

Anybody can give me a hand?

Thanks in advance
-rockdale

From: Evertjan. on
rockdale wrote on 03 sep 2008 in
microsoft.public.inetserver.asp.general:

> Hi, all:
>
> Hope somebody can solve this problem for me.
>
> We are migrating 3 asp website into IIS 6.0 on a server 2003. we do
> not want to create 3 website since we do not want to acquire different
> ports or ip for these websites. SO we create 3 virtual directory under
> the default website, but we got problems because the asp pages include
> common code in other asp files and the original developer using
> include virtual to include the common code asp files.
>
> The error I got is :
>
> HTTP 500.100 - Internal server error: ASP error.
> Internet Information Services
>
> -----------------------------------------------------------------------
> ---------
>
> Technical Information (for support personnel)
>
> Error Type:
> Active Server Pages, ASP 0126 (0x80004005)
> The include file '/top.asp' was not found.
> /website_test/index.asp, line 1
>
> Browser Type:
> Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR
> 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR
> 3.5.21022)
>
>
> The source code in the index.asp is <!-- #INCLUDE VIRTUAL="/top.asp"
> --
>>
> and the top.asp is under the same directory with index.asp.
>
> -----------------------------------
>
> If I create website then it works fine, the top.asp is found and the
> page shows properly.
>
> I know one way is the change all include virtual to include file, but
> that's too much workload considering the I am not original developer
> and they have the include virtual everywhere.
>
> I kind know why this error occurred, it is because I create the
> virtual directory, so the include virtual="/top.asp" should changed to
> include virtual="/website_test/top.asp" since the wwwroot is not the
> root anymore. or my understanding is wrong.
>
> Anybody can give me a hand?

methinks:

Just copy the top.asp to the several places where the virtual includes
expect them.

Or, if top.asp would be changed regularly,
have an include to the "master" top.asp in the other top.asp-s.


--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
From: Anthony Jones on
"rockdale" <rockdale.green(a)gmail.com> wrote in message
news:3e9ef259-4d0b-43dd-b082-a39a3028565b(a)q26g2000prq.googlegroups.com...
> Hi, all:
>
> Hope somebody can solve this problem for me.
>
> We are migrating 3 asp website into IIS 6.0 on a server 2003. we do
> not want to create 3 website since we do not want to acquire different
> ports or ip for these websites. SO we create 3 virtual directory under
> the default website, but we got problems because the asp pages include
> common code in other asp files and the original developer using
> include virtual to include the common code asp files.
>
> The error I got is :
>
> HTTP 500.100 - Internal server error: ASP error.
> Internet Information Services
>
> --------------------------------------------------------------------------------
>
> Technical Information (for support personnel)
>
> Error Type:
> Active Server Pages, ASP 0126 (0x80004005)
> The include file '/top.asp' was not found.
> /website_test/index.asp, line 1
>
> Browser Type:
> Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR
> 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR
> 3.5.21022)
>
>
> The source code in the index.asp is <!-- #INCLUDE VIRTUAL="/top.asp" --
>>
> and the top.asp is under the same directory with index.asp.
>
> -----------------------------------
>
> If I create website then it works fine, the top.asp is found and the
> page shows properly.
>
> I know one way is the change all include virtual to include file, but
> that's too much workload considering the I am not original developer
> and they have the include virtual everywhere.
>
> I kind know why this error occurred, it is because I create the
> virtual directory, so the include virtual="/top.asp" should changed to
> include virtual="/website_test/top.asp" since the wwwroot is not the
> root anymore. or my understanding is wrong.
>
> Anybody can give me a hand?
>

Are you aware that IIS can differentiate between websites based on the host
header alone? IOW, multiple websites can be served on the same IP address
through the same port.

You might find it is a lot easier to create three separate web sites and add
three new hostnames to your DNS. Then assign each of the fully quailified
host names to each of the web sites.


--
Anthony Jones - MVP ASP/ASP.NET

From: rockdale on
> Are you aware that IIS can differentiate between websites based on the host
> header alone? IOW, multiple websites can be served on the same IP address
> through the same port.

I did not know about. I thought we need to assign either different IP
address or open different port for each website.
Can you be more specific or point me to related web resources?

Again, thanks a lot.
-rockdale
From: Anthony Jones on
"rockdale" <rockdale.green(a)gmail.com> wrote in message
news:b01e7a92-19f5-405e-aff7-101baeca1518(a)i20g2000prf.googlegroups.com...
>> Are you aware that IIS can differentiate between websites based on the
>> host
>> header alone? IOW, multiple websites can be served on the same IP
>> address
>> through the same port.
>
> I did not know about. I thought we need to assign either different IP
> address or open different port for each website.
> Can you be more specific or point me to related web resources?
>

Lets say you had the websites alpha.yourdomain.com; beta.yourdomain.com;
gamma.yourdomain.com.

You would have alpha, beta, gamma configured in DNS to point to your web
server. If you manage the domain yourself you would use a CNAME entry to
point each at the servers computer name. If someone else manages the DNS
server for yourdomain just have them create A records pointing all to the
same IP addresss, that of your machine.

In IIS create a new website, the wizard wants a description call it 'Alpha'.
On the next wizard page leave IP address set to All Unassigned and port to
80 however enter alpha.yourdomain.com in the host header box. The next page
enter the file path to Alphas web files. Complete the wizard.

Repeat for Beta and Gamma. Now a visitor to http://alpha.yourdomain.com/
will be directed to the correct web service.

Note don't re-use the default site, disable it.

--
Anthony Jones - MVP ASP/ASP.NET