IIS上で実行されているクライアントにPHPWebサイトがあります。MsSQLに切り替えるため、php_pdo_sqlsrv_53_nts.dllを有効にする必要があります。ただし、拡張機能を有効にすると、500エラーが発生し始めます。私の推測では、Webサーバーを再起動する必要がありますが、現時点では特定の理由でそれを避けたいと考えています。
php dllを正しく有効にするために、IISでWebサーバーの再起動が必要かどうかを教えてください。
IIS上で実行されているクライアントにPHPWebサイトがあります。MsSQLに切り替えるため、php_pdo_sqlsrv_53_nts.dllを有効にする必要があります。ただし、拡張機能を有効にすると、500エラーが発生し始めます。私の推測では、Webサーバーを再起動する必要がありますが、現時点では特定の理由でそれを避けたいと考えています。
php dllを正しく有効にするために、IISでWebサーバーの再起動が必要かどうかを教えてください。
ローカルホストで作業している場合でも、再起動が必要です。
はい-Microsoft.comを参照してください
念のために言っておきますが、私のWebサーバーの再起動には数秒しかかからないので、それがクライアントにとって大きな問題であるかどうかはわかりません。彼はロードバランサーなどを備えたサーバーを複数持っていますか?その場合、あなたはそれらを一つずつまたは何かをすることができますか?または、DNSを変更してトラフィックを一時的に別の場所に再ルーティングするという別の賢いアイデアがありますか?
世論に反して、私はノーと言うつもりです、そしてここに理由があります:
IISを使用しているため、再起動が必ずしも緊急ではない場合は、アプリプールのリサイクルを試すことができます。
循環には少し時間がかかる場合がありますが、「リサイクル」は重複する方法を使用し、新しいプロセスが新しく生成された要求を処理している間、アクティブな要求が終了するまで古いプロセスを維持します。これは、既存のすべてのプロセスが終了するまで続き、その後、古いプールが正常に終了します。これにより、エンドユーザーのサービスが中断されないようになります。欠点として、サイトに長期間滞在しているユーザーがいる場合、PHP拡張機能が利用可能になるまでに時間がかかることがあります。
私は過去にこの方法で成功し、IISを完全に再起動せずにPHP拡張機能をインストールすることができました。
IIS 7でリサイクルするには: