从DMZ运行IIS时连接到SQL Server数据库时出错

我已经为此工作了几天了。

我们的客户之一有一个3层服务器计划 – 一个IIS服务器,一个应用程序服务器(Asp.Net MVC3应用程序所在的位置)和数据库服务器。 所有服务器都是Windows Server 2012 R2。 应用程序服务器和数据库服务器在自己的域上,IIS服务器在另一个域上。

IIS服务器位于DMZ上,使用防火墙将其与应用程序服务器和SQL服务器分开。

我可以使用我所需的凭据从应用程序服务器上的ODBC连接到SQL服务器数据库实例。

IIS通过UNC共享连接到应用程序。 应用程序池使用本地帐户运行。 在应用程序服务器上是另一个本地帐户,具有相同的用户名和密码。

SQL Server数据库通过SQL Server身份validation连接到。

当我连接到网站,我得到我的login屏幕。 当我尝试login(当它需要使用数据库)时,我得到以下错误:

Win32Exception:

连接尝试失败,因为连接方在一段时间后没有正确响应,或由于连接的主机未能响应而build立连接失败。

SQLEXCEPTION:

与SQL Serverbuild立连接时发生networking相关或特定于实例的错误。 服务器未find或无法访问。 validation实例名称是否正确,并将SQL Serverconfiguration为允许远程连接。

道歉,我正在closuresVMWare,不能直接从服务器上复制/修改。

认为正在发生的事情是,IIS服务器在本地运行应用程序,并且由于DMZ和不同的域,无法看到数据库服务器。

我需要IIS来运行应用程序,以便应用程序可以与数据库交谈。 我怎样才能最好地完成这个? 我可以将IISconfiguration为在应用程序服务器上运行应用程序吗? 如果是这样,我需要什么configuration设置?

如果您需要更多的信息,只需询问我将提供。

为了完成这个任务,我已经准备好了尽可能多的降薪。

编辑:

我可以configurationIIS转发请求到内部服务器?

我通过使用应用程序请求路由和URL重写来设置从Web服务器到应用程序服务器的反向代理来处理这个问题。 下面的URL有我遵循的指示。

http://weblogs.asp.net/owscott/creating-a-reverse-proxy-with-url-rewrite-for-iis

简单的解决办法,让我坚持了太久 – 我没有太多的服务器经验,但是当你在一个启动时,你做你必须做的。