Web Deploy发布网站及常见问题解决方法(图文)
web deploy对于asp.net开发人员来说绝不陌生,在开完完成后我们部署网站的过成功使用web deploy可以很便捷的实现从visual studio一键部署到服务器,并且可以自动判断文件是否有更改,并进行相应的修改和删除。由于最近恰好入手一台windows server 2008 r2的服务器,所以周良就在这上面进行了一番测试研究。
安装web deploy
安装的详细过程这里就不再赘述,主要是确保以下几项服务安装正确。
1. 安装之前确认服务器安装了管理服务:iis-add role service
2. 下载web deploy
下载地址:http://www.iis.net/downloads/microsoft/web-deploy
3. 点击安装,如果你不需要php,可以将php相关的全部取消,点击i accept就可以进行下载和自动安装。如果是手动在安装一定要确保web deploy的所有组件都安装上,否则在使用的时候就会产生404错误。
4. 安装完成后,为网站创建一个非管理员的账号,同时将iis中management service中“enable remote connections”勾选。
5. 配置configure web deploy publishing
6. 打开服务器的8127端口
使用web deploy的常见问题
安装完成后就可以开始在visual studio中开始配置连接。在刚开始使用的时候周良曾遇到如下的问题,这里附上我的解决方法,欢迎大家讨论:错误的信息可以通过查看服务器上的“web deploy”事件日志。
错误一:not able to log on the user ‘.\wdeployconfigwriter'
第一次安装好之后,未检查用户是否创建正确所以出现了无法登陆的情况,这个问题是由于服务器用户组中wdeployadmin 和wdeployconfigwriter用户未能创建。这种情况下,需要我们手动去创建两个用户,并进行相关权限的配置。具体步骤如下:
1. 在服务器本地用户中创建 wdeployadmin 和 wdeployconfigwriter. 并设置密码(第四步还将用到)。二者都同时勾选“密码永不过期“ 。
2. 添加wdeployadmin 到administrators组
3. 打开c:\\windows\system32\inetsrv\config—属性—安全,添加wdeployconfigwriter并赋予修改和写权限
4. 打开iis,选择”management service delegation ( 管理服务委派)”将这里所有用户名为wdeploy* 的点击右侧的“编辑”—“设置”填写第一步添加的用户名和密码。
设置完成以后,就能够正常使用web deploy进行连接,如果使用仍然有错误,那么继续检查事件日志。
错误二:system.unauthorizedaccessexception: 试图执行未经授权的操作。
出现此类问题通常是由于创建用户时未授权造成。
首先检查错误一中的第二,三步中提到的授权是否正常。
然后重新配置用户的授权。
在iis中右键网站-选deploy菜单中的configure web deploy publishing
选择windows,点击“select”
;
输入创建的非管理员的deploy用户名
周良到此步为止,问题解决。
接下来就可以通过vs进行连接发布。