将Asp.Net网站发布到IIS的四种方法及注意事项
不管是那种发布方法, 第一件事情是让IIS能够支持asp.net程序, 默认IIS是不开器asp.net网站程序的支持的.在IIS中的"Web服务扩展"中, 确保"ASP.NET v2.0.50727"被启用. 其他的可以保持禁用状态.
发布方法1:---直接复制到IIS目录发布目录中(C:\Inetpub\wwwroot)
a. 将经过VS调试且运行正常的ASP.NET网站项目的文件夹复制到IIS的wwwroot文件夹中.
b. 检查项目文件夹的"属性"--->"安全", 查看Internet来宾帐户, 确保其有"读取"权限.(默认情况下, 复制到wwwroot中的文件夹会继承wwwroot的"读取"权限, 但当修改过IIS主目录位置时, 常常需要手动指定"读取"权限)
c. 在IIS管理器中刷新网站后, 将会看到刚复制的文件夹. 在IIS中, 右击该文件夹--->"属性"--->"目录"选项卡, 确保"读取","记录访问"以及"索引资源"3项的选中状态.
然后点击"目录安全"选项卡, 点击"授权及访问控制"下边的"编辑", 确保"允许匿名访问"和"集成windows验证"的选中状态, 并且切忌, 不要修改匿名帐户的用户名和密码.
如果希望非index, default, iistart等名称的页面做默认首页, 还需要在"文档"选项卡中, 点击"启用默认内容文档"的添加, 将你希望做首页的文件名添加.
d. 再回到文件夹"属性"中的"目录"选项卡, 点击"创建"即可.(需要执行脚本请勾选"脚本资源访问"和执行权限中的"纯脚本")
发布方法2:---使用Vs2008的IDE自带的发布功能, 进行发布操作.
a. 在经过VS调试且运行正常的ASP.NET网站项目中, 右键点击网站项目, 选择"发布网站"后点击"目标路径"后便的Browser按钮(就那个...按钮), 将弹出一个"发布网站"对话框.
b. 在弹出的对话框中, 先点击左侧的"本地IIS", 然后在右侧的"资源管理器"上方, 点击"创建新Web应用程序"后(也可以点击"创建虚拟目录"), 输入应用程序的名字, 之后一路ok就可以了
发布方法3: ---使用虚拟目录发布网站.
a. 在IIS管理其中, 点击默认网站(或你的网站), 选择"右键"--->"新建"--->"虚拟目录", 之后在弹出的对话框中输入别名, 然后再选择网站项目的所在路径.
建议将网站项目拷贝到wwwroot下再创建虚拟路径, 一来可以备份, 二来不用再修改权限. 如在其他目录, 还需要指定网站项目文件夹的文件系统权限(如发布方法1中的a)
b. 选择玩路径后, 除"读取"外还需要勾选"运行脚本". 之后点击确定即可.
发布方法4:---使用文件夹共享中的"web 共享", 进行发布操作.
a. 在网站项目文件夹上点击"右键", 选择"共享和安全"之后, 在弹出的对话框中, 选择"web 共享"选项卡. 选择"共享此件夹"之后, 将弹出"编辑别名"对话框, 再修改别名后, 确定即可.(可按需勾选脚本选项)
建议: 将网站项目复制到某个目录后, 再执行"web 共享". 不知道什么原因, 在有些文件夹下执行不能够成功, 如桌面文件夹下.
IIS出问题后的常见检查步骤:
1. 检查"Web服务扩展"中, 是否开启了"ASP.NET v2.0.50727"的支持.
2. 打开网站所在的文件夹(如: wwwroot), 在"属性"--->"安全"中, 检查有没有Internet来宾帐户, 如没有请添加, 并为其至少指定一个"只读"权限.
3. 在IIS管理器重, 选中"默认网站"后点击"属性", 在"主目录"中, 查看有没有选中"读取"、"记录访问"以及"索引资源".再"目录安全"中, 点击"授权及访问控制"下边的"编辑"之后, 查看又没有勾选"匿名访问"和"集成windows验证".
检查"ISAPI筛选器"选项卡, 是否为空.
如果设置非index、default等名称的页面为主页, 请检查是否在"文档"选项卡的"启用默认内容文档"中添加你希望做首页的文件名.
4. 检查"默认网站"下边的应用程序, 右键点击你网站对应的应用程序, 选择"属性", 按上面3的要求检查"目录"、"目录安全"和"文档"三个选项.