web-dev-qa-db-ja.com

Windows Server2012でISAPIによってIIS8とTomcat7をリンクできません

まず、私はIISとWindowsServerにまったく慣れていません。以前は、ApacheとLinuxでしか作業していませんでした。

IIS8とTomcat7.0.34をサブドメインでリンクしたいので、誰かがsubdom.mydomain.comにアクセスしたときにのみ、IISはTomcatに要求を転送します

私はこれらの2つの参考文献を調べました:

http://lab.usgin.org/applications/doc/make-Tomcat-6x-work-iis7
http://Tomcat.Apache.org/connectors-doc/reference/iis.html

そして彼らが示した通りに正確に行いました。以下は私が行った手順です。

  1. Windows x64 ISAPIバイナリを http://Apache.techartifact.com/mirror//Tomcat/tomcat-connectors/jk/binaries/windows/ からダウンロードし、そのisapi_redirect.dllをディレクトリ名に配置しましたisapiはTomcatインストールディレクトリの下に作成されました。

  2. 私はworkers.propertiesファイルを作成し、Tomcatのconfディレクトリに配置しました

worker.list = tomcatworker1 
 worker.tomcatworker1.Host = localhost 
 worker.tomcatworker1.port = 8009 
 worker.tomcatworker1.type = ajp13
  1. 次に、uriworkermap.propertiesファイルを作成し、次のコンテンツを含むTomcatのconfディレクトリに配置しました(Tomcatのルートアプリをサブドメインのルートパスで実行するため)。
/* = tomcatworker1 

次に、isapi_redirect.propertiesファイルを作成し、Tomcatインストールの下のisapiディレクトリに次の内容で配置しました。

#JakartaISAPIリダイレクターの構成ファイル
 
#Webサイトを基準としたISAPIリダイレクター拡張機能へのパス
#これは、実行権限
 extension_uri =\Tomcat\isapi_redirect.dll 
 
#ISAPIリダイレクタのログファイルへのフルパス
 log_file = C:\ ProgramFiles\Apache Software Foundation\Tomcat 7.0_Tomcat7_ins1\logs\isapi_redirect.log 
 
#ログレベル(デバッグ、情報、警告、エラー、またはトレース)
 log_level = info 
 
#workers.propertiesファイルへのフルパス
 worker_file = C:\ ProgramFiles\Apache Software Foundation\Tomcat 7.0_Tomcat7_ins1\conf\workers.properties 
 
# uriworkermap.propertiesファイルへのフルパス
 worker_mount_file = C:\ ProgramFiles\Apache Software Foundation\Tomcat 7.0_Tomcat7_ins1\conf\uriworkermap.properties 

IIS Manager、メインサーバーノードで、選択したISAPIおよびCGI制限機能。それを開き、次の情報を含む新しい制限を追加します。

ISAPIまたはCGIパス= {My Tomcat Directory Path}\isapi\isapi_redirect.dll 
 Description = Tomcat 
 [拡張パスの実行を許可する] 
を選択します

バインディングsubdom.mydomain.comを使用して新しいサイトを作成し、その中に次のプロパティを持つ新しい仮想ディレクトリを追加しました。

エイリアス= Tomcat 
物理パス= {私のTomcatルートディレクトリ}\isapi 

次に、新しいWebサイトのノードの下にあるISAPIフィルター機能。この情報を使用して新しいフィルターを作成します。

フィルタ名= Tomcat 
実行可能ファイル= {私のTomcatルートディレクトリ}\isapi\isapi_redirect.dll

最後に、ISAPIハンドラーが有効になっていることを確認しました。

これらすべてのことを行った後、サブドメインにアクセスしたときに、実行時エラーが発生しました。これを解決する方法がわかりません。このリンクでエラーをチェックしてください http://backops.cmee.in/

4
Abhi

仮想ディレクトリで名前jakartaを使用し、他に何も使用しない限り、構成に成功することはありませんでした。 confおよびlogsディレクトリは、ISAPIインストールディレクトリのサブディレクトリである必要がありました。

右クリックして新しいテキストドキュメントを使用してこれらの.propertiesファイルを作成した場合、そのWindowsはそれらに.txt拡張子を追加しませんでした。

最後に、workers.propertiesでlocalhostの代わりに127.0.0.1を使用します。理由はわかりませんが、Windows2012でローカルホストを使用しても機能しません。

1
mahnsc