我正在用c#.net创建一个restful API应用程序。当我通过iisexpress在调试或发布模式下编译我的应用程序时。它的工作方式与预期一致。我可以使用fiddler并在" get“中传递相应的参数,比如用户凭证,它将连接并得到200 (http://localhost:49917/v2/Carriers)的响应。当我发布我的应用程序并将其部署在IIS (http://api.test1.net/v2/Carriers)中时。IIS正在安装编译我应用程序的同一台计算机。然后,我使用fiddler并传递必要的参数,得到一个503的响应。我不知道为什么不能工作。我的应用程序池设置如下:.Net CLR版本: v4.0托管管道模式:集成身份: LocalService (我也尝试过ApplicationPoolIdentity)
当我发布我的应用程序时,我使用以下发布方法:“文件系统”。
我已经在主机文件(windows/system32/drivers/etc/)中添加了IP地址和主机名。我不知道为什么不能工作。
与发布版本相比,visual studio在调试/发布模式下的工作方式有哪些不同之处?
发布于 2018-11-18 06:24:15
我想让你们知道,我做了你们推荐的事情,我想出了答案。我需要在SQL Server数据库中添加一个新用户。
“在IIS APPPOOL\ASP.NET v4.0下访问数据库当我们使用ASP.NET v4.0应用程序池时,请确保已将IIS APPPOOL\ASP.NET v4.0添加到您的数据库服务器->安全->登录。”
在我添加这个新用户"IIS APPPOOL\api.test1.net“之后,使用fiddler的api get请求可以正常工作,响应为200。"api.test1.net“是IIS中我的应用程序池的名称。
感谢您的推荐。
https://stackoverflow.com/questions/53339704
复制相似问题