Sal*_*mer 2 asp.net iis web-config
我在IIS中有一个网站,并且我希望将2、3.5和4版本的应用程序托管在同一IIS网站下。这可能吗?
认为这就像修改web.config一样容易。到目前为止,我已经在根上创建了一个ASP.NET 3.5站点。然后,我在下面创建一个目录并部署了一个ASP.NET 2.0站点。到目前为止,当我查看3.5站点时,它的显示效果很好。但是,在2.0站点浏览目录的default.aspx时,得到:
说明:在解析服务于此请求所需的资源期间发生错误。请查看以下特定的解析错误详细信息,并适当地修改您的源文件。
有什么想法吗?
谢谢。
更新以显示完整错误(不确定是否有帮助)

每个Web应用程序都需要单独的IIS应用程序。巧合的是,单独的应用程序可以具有单独的应用程序池,而应用程序池又可以具有单独的.NET Framework版本。
但这不是你的问题
对于您的应用程序,.NET 2.0 Web应用程序和.NET 3.5 Web应用程序使用相同版本的.NET(CLR 2.0)时会遇到问题。您看到的问题是因为该子应用没有被标记为单独的应用,所以运行时在错误的位置寻找程序集来加载您的类型。
您的网站内容可能看起来像这样:
root (~/)
- bin
* app.dll
- sub-app
- bin
* subapp.dll
Run Code Online (Sandbox Code Playgroud)
子应用程序运行时,它尝试加载类型Second.Namespa._Default,但程序集路径为〜/ bin(根目录/ bin),其中不包含正确的程序集。如果在IIS中将子应用程序标记为自己的应用程序,则会得到以下信息:
root (~/)
- bin
* app.dll
- sub-app (~/ again for anything below)
- bin
* subapp.dll
Run Code Online (Sandbox Code Playgroud)
现在加载Second.Namespa._Default将查找〜/ bin(现在为sub-app / bin),并找到正确的程序集并能够加载类型。
一个网站可以在一个IIS上托管多个应用程序。请执行下列操作:
1.)将网站添加到您的IIS
2.)转到硬盘/ ftp服务器上的物理文件夹,然后定义应用程序应在网站中存放的文件夹,例如:[] =文件夹()=文件
=====> [root]
==========>(web.config)
==========> [bin]
==========> [网站]
==========> [图像]
==========> [应用程序1]
===================>(web.config)(清除和覆盖继承的设置)
==================== [bin]
===================> [站点]
===================> [图像]
==========> [应用程序2]
===================>(web.config)(清除和覆盖继承的设置)
==================== [bin]
===================> [站点]
===================> [图像]
3.)返回IIS管理器,然后选择“应用程序池”和“添加新的应用程序池”。将其称为“应用程序1”。重复它,并调用第二个“应用程序2”
4.)在左侧选择您的网站,然后浏览刚刚创建的文件夹。右键单击文件夹“应用程序1”,然后选择“转换为应用程序”。对文件夹“应用程序2”执行相同的操作。每次执行此操作时,请从步骤3中选择应用程序池。
5.)你准备好了。现在,将代码放在“应用程序1”或“应用程序2”的“ bin”文件夹中时,它被视为另一个不同的应用程序。
6.)请注意,“应用程序1或2”上方的文件夹中的所有web.config属性都是继承的。您可以使用“ clear”标签或“ remove”和“ add”标签,在文件夹“ application 1或2”内使用自己的web.config覆盖它们。您很有可能为网站的根文件夹定义了web.config。此web.config将由您的应用程序继承。
| 归档时间: |
|
| 查看次数: |
15743 次 |
| 最近记录: |