但是这样的话就会与虚拟目录的网站冲突,导致虚拟目录的网站不好用,网站都是.net1.1的,并且用到了微软2003的树控件。
请问有谁知道这个问题怎么解决?
7 个解决方案
#1
实在不是很清楚你说的意思。
比方说你的主目录(DefaultWebSite)和虚拟目录(VD1)结构如下:
-DefaultWebSite
|
----VD1
其实DefaultWebsite是一个网站,VD1也是一个网站。如果把DefaultWebSite直接指向到VD1所在的目录(文件系统),那么你的描述是“由于主目录的网站不能使用虚拟目录”。这种情况下怎么就不能使用虚拟目录了?不理解你的意思。
如果按照图示的结构的话,你好像又说会与虚拟目录的网站冲突,到底是什么样的冲突呢?
请你务必把问题描述清楚一点,这样大家才能帮你啊。
比方说你的主目录(DefaultWebSite)和虚拟目录(VD1)结构如下:
-DefaultWebSite
|
----VD1
其实DefaultWebsite是一个网站,VD1也是一个网站。如果把DefaultWebSite直接指向到VD1所在的目录(文件系统),那么你的描述是“由于主目录的网站不能使用虚拟目录”。这种情况下怎么就不能使用虚拟目录了?不理解你的意思。
如果按照图示的结构的话,你好像又说会与虚拟目录的网站冲突,到底是什么样的冲突呢?
请你务必把问题描述清楚一点,这样大家才能帮你啊。
#2
我的网站是mysite,放在E:\mysite文件夹下,在D盘下还有个网站D:\abc
abc是用虚拟目录建的
mysite是直接把IIS的默认网站-》属性-》主目录改为E:\mysite而指向它的,这样在浏览器中就可以直接使用ip来访问mysite这个网站了
而虚拟目录建的abc网站就必须用ip加上虚拟目录名才能浏览,如http://127.0.0.1/abc
mysite不能使用虚拟目录的原因是用了一个activeX控件,在里面写死了,在里面得到的是主机的ip,这样如果用虚拟目录的话得不到http://127.0.0.1/mysite这样的路径(网站程序需要得到host的路径),所以只能放在主目录下,这样得到的ip跟路径是一致的,都是http://127.0.0.1/
但设好主目录后,abc就不好用了,提示找不到相应路径下的文件
而将默认网站-》属性-》主目录设为初始值,abc这个网站又好用了
有谁知道是什么原因吗?
abc是用虚拟目录建的
mysite是直接把IIS的默认网站-》属性-》主目录改为E:\mysite而指向它的,这样在浏览器中就可以直接使用ip来访问mysite这个网站了
而虚拟目录建的abc网站就必须用ip加上虚拟目录名才能浏览,如http://127.0.0.1/abc
mysite不能使用虚拟目录的原因是用了一个activeX控件,在里面写死了,在里面得到的是主机的ip,这样如果用虚拟目录的话得不到http://127.0.0.1/mysite这样的路径(网站程序需要得到host的路径),所以只能放在主目录下,这样得到的ip跟路径是一致的,都是http://127.0.0.1/
但设好主目录后,abc就不好用了,提示找不到相应路径下的文件
而将默认网站-》属性-》主目录设为初始值,abc这个网站又好用了
有谁知道是什么原因吗?
#3
先设置好主目录
然后在IIS Manager里面找到你的虚拟目录abc,右键点击选择"Properties",把路径重新定义一下,指向到D:\abc
如果还是不能用,请你把%win_root%\system32\inetsrv\Metabase.xml里面相关的配置项贴出来
<IIsWebVirtualDir Location="/LM/W3SVC/1/ROOT/abc"
....
....
</IIsWebVirtualDir>
然后在IIS Manager里面找到你的虚拟目录abc,右键点击选择"Properties",把路径重新定义一下,指向到D:\abc
如果还是不能用,请你把%win_root%\system32\inetsrv\Metabase.xml里面相关的配置项贴出来
<IIsWebVirtualDir Location="/LM/W3SVC/1/ROOT/abc"
....
....
</IIsWebVirtualDir>
#4
虚拟目录abc的路径还是D:\abc ,不可能由于主目录指向了E:\mysite,它就跟着指向了E:\mysite
#5
那么,麻烦您把配置文件里面的相关内容贴一下好吗?谢谢!
还有,IE报错信息最好也贴一下,谢谢。
还有,IE报错信息最好也贴一下,谢谢。
#6
利用配置文件的配置节可以让它不继承父目录的配置文件,如下
<location path="." allowOverride="false" inheritInChildApplications="false"> </location>
把它加在父目录的<system.web>节外面即可,测试一下果然如此,甚喜,虽记之以备忘,同时也于大伙共享!
下面是更好的一个:
虚拟目录中的web.config继承了主目录中的web.config出现问题是由于根目录中的web.config添加了httphandler、 httpmodule 引起的。
解决办法:将 httphandler httpmodule的声明添加到location中。
如下所示:
<location path="." allowOverride="true" inheritInChildApplications="false">
<system.web>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
</location>
path 不用说指定的是一个目录
allowOverride 指是否可以将这个重写
inheritInChildApplications 指是否被子级应用程序继承
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
以上试过了,可用
<location path="." allowOverride="false" inheritInChildApplications="false"> </location>
把它加在父目录的<system.web>节外面即可,测试一下果然如此,甚喜,虽记之以备忘,同时也于大伙共享!
下面是更好的一个:
虚拟目录中的web.config继承了主目录中的web.config出现问题是由于根目录中的web.config添加了httphandler、 httpmodule 引起的。
解决办法:将 httphandler httpmodule的声明添加到location中。
如下所示:
<location path="." allowOverride="true" inheritInChildApplications="false">
<system.web>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
</location>
path 不用说指定的是一个目录
allowOverride 指是否可以将这个重写
inheritInChildApplications 指是否被子级应用程序继承
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
以上试过了,可用
#7
十分感谢!正需要呢!
#1
实在不是很清楚你说的意思。
比方说你的主目录(DefaultWebSite)和虚拟目录(VD1)结构如下:
-DefaultWebSite
|
----VD1
其实DefaultWebsite是一个网站,VD1也是一个网站。如果把DefaultWebSite直接指向到VD1所在的目录(文件系统),那么你的描述是“由于主目录的网站不能使用虚拟目录”。这种情况下怎么就不能使用虚拟目录了?不理解你的意思。
如果按照图示的结构的话,你好像又说会与虚拟目录的网站冲突,到底是什么样的冲突呢?
请你务必把问题描述清楚一点,这样大家才能帮你啊。
比方说你的主目录(DefaultWebSite)和虚拟目录(VD1)结构如下:
-DefaultWebSite
|
----VD1
其实DefaultWebsite是一个网站,VD1也是一个网站。如果把DefaultWebSite直接指向到VD1所在的目录(文件系统),那么你的描述是“由于主目录的网站不能使用虚拟目录”。这种情况下怎么就不能使用虚拟目录了?不理解你的意思。
如果按照图示的结构的话,你好像又说会与虚拟目录的网站冲突,到底是什么样的冲突呢?
请你务必把问题描述清楚一点,这样大家才能帮你啊。
#2
我的网站是mysite,放在E:\mysite文件夹下,在D盘下还有个网站D:\abc
abc是用虚拟目录建的
mysite是直接把IIS的默认网站-》属性-》主目录改为E:\mysite而指向它的,这样在浏览器中就可以直接使用ip来访问mysite这个网站了
而虚拟目录建的abc网站就必须用ip加上虚拟目录名才能浏览,如http://127.0.0.1/abc
mysite不能使用虚拟目录的原因是用了一个activeX控件,在里面写死了,在里面得到的是主机的ip,这样如果用虚拟目录的话得不到http://127.0.0.1/mysite这样的路径(网站程序需要得到host的路径),所以只能放在主目录下,这样得到的ip跟路径是一致的,都是http://127.0.0.1/
但设好主目录后,abc就不好用了,提示找不到相应路径下的文件
而将默认网站-》属性-》主目录设为初始值,abc这个网站又好用了
有谁知道是什么原因吗?
abc是用虚拟目录建的
mysite是直接把IIS的默认网站-》属性-》主目录改为E:\mysite而指向它的,这样在浏览器中就可以直接使用ip来访问mysite这个网站了
而虚拟目录建的abc网站就必须用ip加上虚拟目录名才能浏览,如http://127.0.0.1/abc
mysite不能使用虚拟目录的原因是用了一个activeX控件,在里面写死了,在里面得到的是主机的ip,这样如果用虚拟目录的话得不到http://127.0.0.1/mysite这样的路径(网站程序需要得到host的路径),所以只能放在主目录下,这样得到的ip跟路径是一致的,都是http://127.0.0.1/
但设好主目录后,abc就不好用了,提示找不到相应路径下的文件
而将默认网站-》属性-》主目录设为初始值,abc这个网站又好用了
有谁知道是什么原因吗?
#3
先设置好主目录
然后在IIS Manager里面找到你的虚拟目录abc,右键点击选择"Properties",把路径重新定义一下,指向到D:\abc
如果还是不能用,请你把%win_root%\system32\inetsrv\Metabase.xml里面相关的配置项贴出来
<IIsWebVirtualDir Location="/LM/W3SVC/1/ROOT/abc"
....
....
</IIsWebVirtualDir>
然后在IIS Manager里面找到你的虚拟目录abc,右键点击选择"Properties",把路径重新定义一下,指向到D:\abc
如果还是不能用,请你把%win_root%\system32\inetsrv\Metabase.xml里面相关的配置项贴出来
<IIsWebVirtualDir Location="/LM/W3SVC/1/ROOT/abc"
....
....
</IIsWebVirtualDir>
#4
虚拟目录abc的路径还是D:\abc ,不可能由于主目录指向了E:\mysite,它就跟着指向了E:\mysite
#5
那么,麻烦您把配置文件里面的相关内容贴一下好吗?谢谢!
还有,IE报错信息最好也贴一下,谢谢。
还有,IE报错信息最好也贴一下,谢谢。
#6
利用配置文件的配置节可以让它不继承父目录的配置文件,如下
<location path="." allowOverride="false" inheritInChildApplications="false"> </location>
把它加在父目录的<system.web>节外面即可,测试一下果然如此,甚喜,虽记之以备忘,同时也于大伙共享!
下面是更好的一个:
虚拟目录中的web.config继承了主目录中的web.config出现问题是由于根目录中的web.config添加了httphandler、 httpmodule 引起的。
解决办法:将 httphandler httpmodule的声明添加到location中。
如下所示:
<location path="." allowOverride="true" inheritInChildApplications="false">
<system.web>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
</location>
path 不用说指定的是一个目录
allowOverride 指是否可以将这个重写
inheritInChildApplications 指是否被子级应用程序继承
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
以上试过了,可用
<location path="." allowOverride="false" inheritInChildApplications="false"> </location>
把它加在父目录的<system.web>节外面即可,测试一下果然如此,甚喜,虽记之以备忘,同时也于大伙共享!
下面是更好的一个:
虚拟目录中的web.config继承了主目录中的web.config出现问题是由于根目录中的web.config添加了httphandler、 httpmodule 引起的。
解决办法:将 httphandler httpmodule的声明添加到location中。
如下所示:
<location path="." allowOverride="true" inheritInChildApplications="false">
<system.web>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
</location>
path 不用说指定的是一个目录
allowOverride 指是否可以将这个重写
inheritInChildApplications 指是否被子级应用程序继承
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
以上试过了,可用
#7
十分感谢!正需要呢!