まず、私は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
そして彼らが示した通りに正確に行いました。以下は私が行った手順です。
Windows x64 ISAPIバイナリを http://Apache.techartifact.com/mirror//Tomcat/tomcat-connectors/jk/binaries/windows/ からダウンロードし、そのisapi_redirect.dll
をディレクトリ名に配置しましたisapi
はTomcatインストールディレクトリの下に作成されました。
私はworkers.propertiesファイルを作成し、Tomcatのconf
ディレクトリに配置しました
worker.list = tomcatworker1 worker.tomcatworker1.Host = localhost worker.tomcatworker1.port = 8009 worker.tomcatworker1.type = ajp13
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/
仮想ディレクトリで名前jakartaを使用し、他に何も使用しない限り、構成に成功することはありませんでした。 confおよびlogsディレクトリは、ISAPIインストールディレクトリのサブディレクトリである必要がありました。
右クリックして新しいテキストドキュメントを使用してこれらの.propertiesファイルを作成した場合、そのWindowsはそれらに.txt拡張子を追加しませんでした。
最後に、workers.propertiesでlocalhostの代わりに127.0.0.1を使用します。理由はわかりませんが、Windows2012でローカルホストを使用しても機能しません。