zoukankan      html  css  js  c++  java
  • 服务器资源共享--IIS站点/虚拟目录中访问共享目录(UNC)

    本文重点描述如何使用IIS访问共享资源来架设站点或执行 ASP.Net 等脚本。

    通常情况下,拥有多台服务器的朋友在使用IIS建立站点的时候,会遇到如何把多台服务器的资源合并到一起的问题。如何让A服务器的站点,访问B服务器内的资源(如:音乐、视频等)。

    准备工作

    1.共享资源服务器为 ShareServer,IP地址为:192.168.100.10;

    2.Web服务器为 WebServer,IP地址为:192.168.100.20

    IIS6 下 详细步骤:

    一、共享账户的建立

    1. 1.在WebServer上建立一个用户名,方便使用该用户读取ShareServer上的共享目录,我们可以直接把该用户归入IIS_IUSRS组内。在这里我们建立名IIS_SHARED,密码123456;
    2. 2.在ShareServer中也建立一个同名的密码的用户(必须一致,否则在UNC验证的时候会无法登陆)。这里用户名也应该为 IIS_SHARED,密码为 123456,也归入IIS_IUSRS组中;

    二、共享位置的建立

    1.  ShareServer 中使用文件夹共享工具,共享出一个目录,共享名为 web,共享权限设置为 Administrators 组 读取+写入,IIS_SHARED用户 读取(如果需要存东西,就加上 写入 权限);
    2. 这里 Administrators 用户必须拥有 读取+写入 权限,否则在 WebServer 里使用IIS直接设置的时候会提示无法保存设置。
      共享位置的文件夹安全设置也必须加入 IIS_SHARED的 读取运行 权限
    3. Window2008 文件夹共享需要设置一下,不像XP那么简单,这方面的资料蛮多的,我就不累赘了^_^;

    三、IIS中引用共享目录

      1. WebServer 中IIS里建立站点或虚拟目录,路径指向 \192.168.100.10web,连接认证用户手动输入为 IIS_SHARED,密码 123456。
        当第1步完成的时候,您已经通过web方式访问该站点或虚拟目录中的来自 ShareServer 共享目录的资源,但是 ASP.Net 还没有权限执行。
      2. ASP.Net的权限设置
        从站点根目录下打开 web.config 文件,在 <system.web> 节点以内,加入以下内容:
        <identity impersonate="true" userName="IIS_SHARED" password="123456" />
        其实就是修改了 ASP.Net 执行的认证方式,把认证方式修改为 ASP.Net模拟用户 ,这样就能让 ASP.Net 通过刚才建立的共享账号执行和访问 ShareServer 中的资源了

    附注:

    1.本文中的ASP.Net权限设置内容中,直接把用户和密码都写入 web.config 文件内,这样做安全性不是很好,可以使用以下方法提高安全性:

    从微软下载工具 aspnet_setreg.exe (附送下载地址:http://download.microsoft.com/download/2/9/8/29829651-e0f0-412e-92d0-e79da46fd7a5/aspnet_setreg.exe) 下载后请解压,这是一个压缩包。

    在 WebServer 中使用 aspnet_setreg.exe 执行以下指令:

    aspnet_setreg.exe -k:SOFTWAREAspNetIdentityAPPidentity -u:"IIS_ShareUser" -p:"123456"

    备注:这里的AspNetIdentityAPPidentity 可以根据你个人的爱好来设置,只要在读取的地方对应就行了。

    成功执行后打开注册表编辑器,打开目录 HKLMSOFTWAREAspNetIdentityAPPidentity 会看到 userName 和 password 已经被系统加密了。

    我们需要授予IIS进程用户权限,以方便IIS用户读取这个加密后的配置,右键-->权限,加入 NetWork Service组(如果是WIN2003以下版本,IIS进程用户应为ASPNET) 读取 权限。

    打开站点根目录下的 web.config ,把 <identity impersonate="true" userName="IIS_ShareUser" password="123456" /> 替换为

    <identity impersonate="true" userName="registry:HKLMSOFTWAREAspNetIdentityAPPidentityASPNET_SETREG,userName" password="registry:HKLMSOFTWAREAspNetIdentityAPPidentityASPNET_SETREG,password" />

    保存退出即可,这样就完成了整个过程,安全性也得到了提升。

    引用:http://blog.csdn.net/luxiaoyu_sdc/article/details/6773331

    以下是几个关键点:

    1.两台服务器上必须处于同一局域网,比如website所在服务器叫A(IP:192.168.10.7),上传后的文件存放服务器为B(IP:192.168.10.36)

    2.在B上建立一个共享目录 X

    3.在A,B二个服务器上都建一个完全一样的用户比如TestUser/123456

    4.将B上的共享目录,文件夹访问权限和共享权限完全授权给TestUser(完全控制)

    5.在A所在的站点中,建一个虚拟目录,指到UNC目录,在输入用户名/密码时,输入TestUser的用户名和密码

    6.目录X中放置web.config,内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <handlers accessPolicy="Read, Script" />
            <directoryBrowse enabled="false" />
            <defaultDocument>
                <files>
                    <clear />
                    <add value="Default.asp" />
                </files>
            </defaultDocument>
            <httpErrors>
                <clear />
            </httpErrors>
        </system.webServer>
    </configuration>

    引用:http://www.cnblogs.com/zjoch/archive/2012/01/18/2325585.html

    错误摘要
    HTTP 错误 500.19 - Internal Server Error
    无法访问请求的页面,因为该页的相关配置数据无效。
    详细错误信息模块 IIS Web Core  
    通知 BeginRequest  
    处理程序 尚未确定  
    错误代码 0x80070005  
    配置错误 由于权限不足而无法读取配置文件   
    配置文件 *****

    请求的 *****

    物理路径 
    登录方法 尚未确定  
    登录用户 尚未确定

    解决方法1:

    打开虚拟目录(mysites)的上一层目录,即父目录(站点所在目录),那么就右击选择它的属性,打开“安全”选项卡,看到“组或用户名”,单击“编辑”按钮添加一个新的用户名“Everyone”,然后更改它的权限,将第二个权限“修改”设置为允许就可以了。

    解决方法2:

    右击虚拟目录,打开高级设置,设置 物理路径凭据 为两个服务器共用的登录用户

  • 相关阅读:
    Mybatis-Plus02 CRUD
    Idea一直卡在loading archetype list问题解决(或者报Unable to import maven project: See logs for details)
    Mybatis-Plus01 快速开始
    用PS给视频磨皮美颜
    Linux基本内容
    【maven】IDEA工程右边的maven配置中Plugins有重复的命令
    段誉身具凌波微波,动无常则,若危若安,一次能走一级台阶或者两级台阶,他要爬一段30级的山路,问有多少种走法?分析如何计算,然后编程解答。 进阶问题:当他轻功熟练度提升,一次最多可以走三级,那就结果有什么变化?后来走火入魔了,不能走一级,只能走二或三级,又有什么变化?
    小陆每天要写一份工作日报,日报标题含有日期。几年后,他翻开以前的日报,想知道两份日报的日期是否同为星期几,请编程帮助他判断。
    高性能HTML5/JS开发框架DevExtreme 新版——v20.2.7发布
    跨平台UI开发框架DevExpress XAF 拥有超强性能,你Get了吗?
  • 原文地址:https://www.cnblogs.com/xiaonanmu/p/3897315.html
Copyright © 2011-2022 走看看