asp.net项目添加远程共享目录作为虚拟目录

asp.net项目添加远程共享目录作为虚拟目录要怎么设置?

服务器IIS网站如何添加远程共享目录作为虚拟目录?

VS调试工具IIs express又是怎样添加远程共享目录作为虚拟目录?

网上找的资料都不成功,最后还是结合网上的资料,以及自己的试验解决了。

-----------------------分三步-----------------------------------------------

第一步,设置权限及远程共享目录;

第二步,设置IIs express访问共享目录,实现vs调试;

第三步,设置服务器IIs访问远程共享目录,实现网站部署;

-----------------------------------------------------------我是一根线,下边才是具体操作步骤-------------------------------------------------------------------------第一步:设置权限及远程共享目录

(注:A服务器为ASP.NET程序所在服务器(VS的IIS express或服务器IIS),B服务器为共享文件夹所在服务器) 

  1. 在两台服务器上建立相同用户名、相同密码的Windows帐户(A与B服务器都要建),比如假设这里用户名是ZzkIndexer,密码是12345678。
  2. 取消两台服务器上的ZzkIndexer帐户的远程控制(Remote Control)权限(让这个帐户拥有尽可能少的权限),如下图:

  3. 将B服务器上的ZzkIndexer帐户移出所有用户组(包含Users),如下图:

    不属于任何用户组?是的,不要怀疑,已经过实践检验。 

  4. 在B服务器上创建共享文件夹ZzkIndex并给ZzkIndexer帐户授予写权限,有两个权限需要设置,一个是文件系统权限,一个是共享权限。
    文件系统权限设置如下图:

    共享权限设置如下:

第二步:设置IIs express访问共享目录,实现VS调试访问远程共享目录

  1. 在A服务器的ASP.NET源程序的web.config文件中,添加帐户模拟设置:
    <system.web>
        <identity impersonate="true" userName="ZzkIndexer" password="12345678"/>
    </system.web>
  2. 在A服务器上,设置“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files”的文件系统权限,授予ZzkIndexer帐户修改权限(注:根据程序是x86或x64选择对应文件夹Framework或Framework64;v4.0.30319为当前.NET Framework版本号)。 否则,运行时会出现错误:The current identity (ZzkIndexer) does not have write access to 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files'.
  3. 在A服务器上,设置“C:\Users\当前登录用户\AppData\Local\Temp\Temporary ASP.NET Files”的文件系统权限,授予ZzkIndexer账户修改权限(注:当前登录用户,为window系统登录用户名;此项设置为非必要设置,仅当网站运行时仍提示拒绝访问时使用 )
  4. 在A服务器上,编辑“程序根目录\.vs\config\applicationhost.config”文件,将远程共享目录添加到iis express的虚拟目录,详情请看https://blog.csdn.net/ningxi_/article/details/103618386
  5. 到此,远行VS里的项目,就可以像项目内部文件的虚拟路径一样,正常读写远程共享目录里的文件了。

第三步:设置服务器IIs访问远程共享目录,实现网站部署;

1、在A服务器的IIS中创建网站,在网站上添加虚拟目录 ,指向B服务器的共享文件夹,如下图:

2、选中A服务器IIS上的虚拟目录,打开“身份验证”功能,启动并设置“匿名身份验证”的特定用户为ZzkIndexer。

3、设置成功,重启网站,运行成功。

发布了85 篇原创文章 · 获赞 23 · 访问量 22万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章