将IIS扩展添加到IIS而不重新启动

时间:2013-03-14 20:49:11

标签: php sql-server iis

我在一个运行在IIS上的客户端上有一个有效的PHP网站。当我们切换到MsSQL时,我需要启用php_pdo_sqlsrv_53_nts.dll。但是,一旦我启用了扩展,我就会收到500错误。我的猜测是我需要重新启动网络服务器,但由于某些原因,我们希望避免使用它。

您能否告诉我是否需要在IIS上重新启动Web服务器才能正确启用php dll?

3 个答案:

答案 0 :(得分:1)

即使您使用的是本地主机,也需要 重启

答案 1 :(得分:0)

是的 - 请参阅Microsoft.com

请注意,重新启动我的任何网络服务器只需几秒钟,因此我不确定这对您的客户来说是否是一个大问题。他有多台带有负载均衡器的服务器吗?在这种情况下,你可以逐个做什么?或者也许还有另一个聪明的想法是通过更改DNS暂时重新路由其他地方的流量?

答案 2 :(得分:0)

与流行的观点相反,我会说,这就是原因:

由于您使用的是IIS,因此如果重启不一定紧急,您可以尝试回收应用程序池。

循环可能需要一些时间,但“循环”使用重叠方法,保持旧进程,直到其活动请求完成,同时新进程处理任何新生成的请求。这将一直持续到所有现有进程完成,然后旧池正常退出。这将确保最终用户不会中断服务。另一方面,如果您的用户长时间站在网站上,可能需要一段时间才能使用PHP扩展程序。

我以前在这个方法上取得了成功,能够安装PHP扩展而无需彻底重启IIS。

在IIS 7中回收:

  1. 打开Internet信息服务(IIS)管理器
  2. 导航至SERVERNAME>应用程序池
  3. 选择您要回收的池(附加到您需要扩展的站点的池)
  4. 在“操作”窗格中,单击“回收...”