按照 DotNetNuke 文档中的建议,从 UNC 共享运行 IIS Web 应用程序有什么不好?
过去我被告知从 UNC 共享运行 Web 应用程序是不明智的。我记得的原因是安全、权利和授权问题以及性能。但是,在 DotNetNuke 文档中,它说:
DotNetNuke 最初支持的网络场配置涉及 两个或多个前端 Web 服务器(“web-heads”),其 IIS 网站根目录 目录映射到远程文件服务器上的公共 UNC 共享。 UNC 共享包含应用程序源代码以及任何 各个网站的静态内容。
不知何故,这对我来说听起来像是一个穷人的配置,我感觉就像打开了一个潜在的潘多拉盒子。遵循 DotNetNuke Corp 的建议是否明智?
I've been taught in the past that it is unwise to run a web application from an UNC share. Reasons I remember are security, rights and authorization trouble and performance. However, in the DotNetNuke documentation it says:
The web farm configuration that DotNetNuke initially supports involves
two or more front end web servers ("web-heads") whose IIS website root
directories are mapped to a common UNC share on a remote file server.
The UNC share contains the application source code as well as any
static content for the individual sites.
Somehow this sounds to me like a poor-mans configuration and I feel like opening a potential Pandora's box. Is it wise to follow DotNetNuke Corp's suggestion here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 UNC 共享本质上没有任何问题。在之前的一家公司,我们运营着数十台 Web 服务器,它们都使用 UNC 共享(不在 DNN 上)。有超过 8 万付费订阅者,其中每天有数十万人使用该应用程序。效果非常好。
要解决 Mitchel 的观点:
1.) 仅当您将单点故障视为一个问题时,它才成为一个问题。各种 SAN/NAS 解决方案都提供大量冗余。
2.) 对于任何像样的 SAN 或 NAS,IO 都不会成为问题。我从来没有遇到过文件系统观察程序的问题。 DNN 不直接使用任何东西,万一内置 ASP.Net 观察器造成问题,我可能会禁用它们。
3.) 我不认为安全性比任何其他解决方案更重要。您必须确保控制对文件的访问并适当地设置权限。对于本地磁盘,您可以选择比网络上的权限更加开放,但您可能应该同样保护两者。有一个与使用 UNC 路径相关的额外配置步骤。与创建值得建立网络场的网站所需的数周甚至数月的努力相比,围绕配置安全性的额外工作将是微不足道的。
我完全同意米切尔关于为什么不使用文件同步的观点。
我知道有些人正在运行具有文件同步功能的 DNN 站点。我不知道有谁没有解决过文件同步引起的问题。就我个人而言,如果算上解决文件同步问题所花费的人力,我怀疑通过文件同步使站点运行良好比在 SAN 上使用 UNC 更便宜。
There is nothing inherently wrong with using a UNC share. At a previous company we operated dozens of web servers and they all used UNC shares (not on DNN). There were over 80k paying subscribers of which 10's of thousands used the applications every day. It worked very well.
To address Mitchel's points:
1.) Single point of failure is only an issue if you make it an issue. There is plenty of redundancy available in the various SAN/NAS solutions.
2.) IO will not be an issue with any decent SAN or NAS. I have never had a problem with file system watchers. DNN doesn't directly use any, in the unlikely event that the built-in ASP.Net watchers created a problem I would probably disable them.
3.) I don't see security as any more of an issue than any other solution. You must be sure to control access to your files and setup permissions appropriately. With local disks you may choose to leave permissions more open than on a network, but you probably should secure both equally well. There is an extra configuration step related to using a UNC path. The extra effort around configuring security will be minuscule when compared to the weeks if not months of effort involved in creating a site that is worthy of a web farm.
I totally agree with Mitchel's opinions on why not to use file synchronization.
I know there are some people out there running DNN sites with file synchronization. I don't know of any who have not had to work around issues caused by the file synchronization. Personally I doubt that getting a site running well with file synchronization is cheaper than using a UNC on a SAN once you count the labor spent sorting out the quirks of file synchronization.
当涉及 DOtNetNuke 的此类配置时,有一些事情可能会出现问题。
我猜测为什么这是 DotNetNuke 公司的“默认”建议,原因如下。注意:这些只是我的意见。
There are a few things that can become problematic when it comes to this type of configuration with DOtNetNuke.
My guess as to why this is the "default" recommendation by DotNetNuke corporation would be due to the following. NOTE: these are ONLY my opinions.