我应该将ASP.NET网站放在wwwroot文件夹中吗?

70

我有许多网站在单个机器上运行,使用IIS。

这些网站是应该放在 C:\inetpub\wwwroot\ 文件夹内还是放在 C:\inetpub\ 文件夹内?

例如:

  • C:\inetpub\wwwroot\Website1\
  • C:\inetpub\wwwroot\Website2\

或者

  • C:\inetpub\Website1\
  • C:\inetpub\Website2\

是否有任何优缺点或其他推荐的位置(我在此计算机上只有一个C驱动器)?

我不确定是否有“正确”的答案,但如果有最佳实践,我想遵循它。

谢谢,

Jonathan

4个回答

71

选择第二个方案。

wwwroot 目录仅作为服务器上默认网站的容器。如果你在 IIS 中删除了默认网站,则可以安全地删除此目录。无论如何,你的网站与默认网站没有任何关系,因此它们应该位于 inetpub 下自己的文件夹中。

也就是说,我们有时会在同一台服务器上拥有多个类型的网站。例如 DEV 和 QA。在这种情况下,我会将其结构化为:

c:\inetpub\dev\site1
c:\inetpub\dev\site2

c:\inetpub\qa\site1
c:\inetpub\qa\site2


1
谢谢Chris。是的,我猜到了这就是情况所在。我已经在inetpub文件夹中创建了我的网站文件夹。 - Jonathan Williams
1
请确保为任何新创建的目录分配适当的权限,就像在删除wwwroot之前所分配的权限一样。 - mchar

5
作为替代方案:
C:\WebSites\my.site1.com
C:\WebSites\my.site2.com

-1

如果您喜欢,可以将应用程序文件夹放在服务器的桌面上。这完全取决于您。您只需要在IIS内进行适当的配置,并授予文件夹所需的访问权限即可。就这样。


8
我建议你避免选择这个选项,因为桌面链接只限于单个用户(文件夹通常在机器的用户设置下),所以删除该用户将破坏你的网站。我理解帖子的重点是“你可以把它放在任何地方”,但这是一个不好的例子。 - DJIDave

-4

这个问题并没有明确的答案,但是

  • C:\inetpub\wwwroot\Website1\
  • C:\inetpub\wwwroot\Website2\

是网站的标准位置。例如,c:\inetpub\ftproot 可以用来托管FTP站点。


10
“wwwroot” 文件夹是默认的网站根目录,其中包含 IIS 欢迎页面。如果您通过服务器 IP 地址或未被服务器识别的绑定访问服务器,可以访问此文件夹中的任何内容。不建议将网站放置在此处,应将网站目录放置在此根文件夹旁而非内部。 - simbolo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接