本人技术笨拙,今天在发布DIPS的MVC4.0项目,并部署到IIS上,遇到各种问题。在查询相关资料后,最终得以解决,所以想把这个过程记录下来。
注:DIPS为一种非关系型数据库
首先,需要安装和注册DIPS。注册完成后要设置IIS的环境,如下:
- 打开 “Internet信息服务(IIS管理器)”;
- 双击 “ISAPI和CGI限制”,如图:
- 点右边的“编辑功能设置”,在弹出的窗口中,勾选“允许未指定的ISAP模块”,如图:
- 点击返回“Internet信息服务(IIS管理器)”,双击功能视图下的“ASP”,在出现的项目列表中,将“启用父路径”设为“True”,点击应用,如图:
- 右击应用程序池,新建应用程序池(gotobin、gotoweb)(若操作系统为64位的话,需要在“高级设置”里将“启用 32 位应用程序”设为“True”),.NET版本可根据自己的实际情况更改,如图:
- 在Default Web Site下新建两个虚拟目录gotobin和gotoweb,右击将虚拟目录gotobin和gotoweb“转为应用程序”,并分别设置好对应的应用程序池gotobin和gotoweb,如图:
- 返回“Internet信息服务(IIS管理器)”,设置ISAPI执行权限,双击“处理程序映射”功能,然后点击“编辑功能权限”,在出现的编辑窗口选择执行,如图:
- 点击“运行”,输入“cmd”,弹出运行界面后,输入“ cd c:\windows\system32\inetsrv\”, 执行如下命令:
appcmd.exe set config /section:isapiCgiRestriction /+"[path='E:\work\AnyCom\Exe\AnyServer.dll',description='AnyServer ISAPI',allowed='True']"
其中path 和description 请根据实际文件和描述信息修改。可以使用如下命令查看是否添加成功:
appcmd list config /section:isapiCgiRestriction,可以使用如下命令删除:
appcmd.exe set config /section:isapiCgiRestriction /-"[path='E:\work\AnyCom\Exe\AnyServer.dll',description='AnyServer ISAPI',allowed='True']"
该命令和增加命令只有一个差别:+变为了-,而且要注意path 和description 一定要严格相等,前后空格都算。