問題タブ [mod-jk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache - エンティティが大きすぎます413apachetomcat
エンティティが大きすぎるリクエスト
要求されたリソース/some/ url / path / on / serverは、GET要求を含む要求データを許可しないか、要求で提供されるデータの量が容量制限を超えています。
以下のmod_jk.logファイルで対応するエラーが発生します。[Mon Oct 10 20:36:11 2011] [9834:0][エラー]ajp_marshal_into_msgb :: jk_ajp_common .c(415):ヘッダー値の追加に失敗しました
mod_jkコネクタを使用してapache1.3が前面にあるtomcat5を実行しているWebファームがあります。今日はコードの変更はありませんでしたが、今日すべてのサーバーでこのエラーが発生し始めました。エラーはランダムにポップアップするようです。同じリクエストで常にエラーが発生するとは限りません。
誰かが原因とそれがランダムになる理由を説明できますか?server.xmlでmax_packet_sizeを増やすための推奨事項を見てきました。変更を加える前に、問題と変更の影響を理解したいと思います。
apache - Mod_JK を使用した JBoss サーバーでのリクエスト処理時間の測定
私の Web アプリケーション アーキテクチャは、Apache 2 (ロード バランサとして) + JBoss 3.2.3 + MySQL 5.0.19 です。
したいこと: JBoss サーバーのみで費やされた (つまり、Web およびデータベース サーバーで費やされた時間を除く) 要求処理時間を (個々の要求ごとに) 測定します。
アプリケーション層のみでリクエスト処理時間をログに記録する方法について調査してきました。*mod_JK ロギング*、*Apache の mod_log_config*、Tomcat AccessLogValveの 2 つの方法が考えられます。
*mod_JK ロギング* の使用: 私の理解では、mod_jk ロギングは各リクエストのリクエスト処理時間を提供し、リクエストが Apache サーバーを離れた時間と、対応する応答が Apache サーバーによって受信された時間との時間差として計算されます。これが正確でない/正しくない場合は、修正してください。
Apache の mod_log_config モデル ( http://www.lifeenv.gov.sk/tomcat-docs/jk/config/apache.html ) を使用: LogFormat (JKLogFile コンストラクト) コンストラクトに「%{JK_REQUEST_DURATION}n」を追加することにより (上記リンク)。「JK_REQUEST_DURATION」は、Apache の観点から Tomcat の全体的な処理時間をキャプチャします。
時間 (上記の場合) には、Tomcat/JBoss + MySQL の処理時間が含まれます。MySQL の処理時間が含まれているため、私の場合は役に立ちません。リクエストの処理時間を JBoss のみで記録したいのです。提案やアイデアをいただければ幸いです。
AccessLogValveの使用: AccessLogValve XML コンストラクトの pattern 属性に %D を設定することにより、「リクエストの処理にかかった時間 (ミリ秒)」をログに記録できます。これかどうかはあまり明確ではありません
- この時間が tomcat/JBoss が要求を処理するのに必要な時間である場合の時間 (たとえば、それを処理するためにスレッド ワーカーを割り当てる)
- リクエストを処理してデータベース サーバーに送信するのにかかった時間 (Tomcat/JBoss サーバーでの全体の時間)
- Tomcat/JBoss によるリクエストの処理と Web サーバー/クライアントへのレスポンスの送信にかかった時間
アイデア/手がかりはありますか?
これは、共有したい私の経験/研究です。誰かが同様の問題を抱えている/それを行う方法を知っている場合は、より良い解決策が見つかる経験/ポインター/考えを共有していただければ幸いです。
あなたの考え/提案を楽しみにしています
apache - エイリアスを無視する JkMount
Apache、Tomcat、Railo ColdFusion を使用して新しいサーバーをセットアップしています。mod_jk を使用して Apache を Tomcat に接続し、Java サーバーで CMS システムを使用しています。CMS の動作方法により、特定のファイル ディレクトリを除いて、すべての要求を Tomcat サーバーに転送したいと考えています。
したがって、次のようにサイト構成で JkMount をセットアップします
これは問題なく動作しますが、実際にはエイリアスであるディレクトリに無視を追加したいと考えています。私はこの行を追加しようとしました:
しかし、それはうまくいきません。/store を除くすべてのファイルを mod_jk を使用して Tomcat サーバーに転送する方法はありますか?
apache - 多くの Apache プロセスが非常に高速に生成され、最大で 3 分未満で限界に達します
私たちは、mod_jk によって結び付けられた apache と tomcat を使用して、大規模な商用アプリケーションをホストしています。今日、アプリケーションが応答しなくなったので (nagios から苦情がありました)、調べてみました。私が見つけたのは、メモリ内の非常に多くの apache プロセスでした。
たくさん、もっとたくさん。そのため、Apache がクリーンアップされることを期待して、Apache を再起動しました。少しの間は機能し、その後、多数のプロセスが再び表示されました。使った
プロセスを監視するために、プロセスの最大数に達するまでに約 3 分かかりました。ここで、Apache エラー ログは次のように述べています。
そのため、少しグーグルで調べたところ、MaxClient 設定の 256 という数字は誰にとっても十分なはずであることがわかりました。そこで、別の問題があります。Apache が書き込んでいる他の唯一のログは other_vhosts_access.log で、次のようになります。
ごく普通の交通量です。したがって、この時点から、問題が何であるかを判断する方法がわかりません。どういうわけか見る/判断できれば助かります:
- なぜApacheはこれらの新しいプロセスを生成し、
- 新しいプロセスの開始を要求します。
必要に応じて netstat を用意していますが、予想どおり、通常の接続しか表示されません。
編集 1: 問題が発生したとき、mod_jk.log は次のメッセージの投稿を開始しました。
apache - Apache+Tomcat+jk: Java EE Web アプリでの静的リソースの提供
最近、Apache w/s + Tomcat をインストールしました。jk を使用すると、Apache から t/c にリクエストをルーティングできました。ネット上の例は通常、次の形式です。
Tomcat の 1 つのインスタンスで複数の Java EE アプリケーションを実行しています (では、なぜ apache を使用するのでしょうか? 私には理由があると思います)。これらの各アプリケーションのコンテキストを次のように変更できると考えました。
そして、次のようなものがあります:
これにより、リクエストが tomcat に正しくルーティングされますが、標準の Java EE アプリケーションの静的リソースをどのように提供するかという問題が残ります。
質問は次のとおりです。
Apacheからリソース/フォルダを提供する方法は? すべてのアプリケーションには独自の resources/ フォルダーがあります。resources/ は、戦争から離れてどこかの apache の doc-root に常駐する必要があると思いますが、JkMount 文字列がわかりません。
/servlet/ スキームは「正しい」方法ですか? 私が従うべきパターンはありますか?
これについてもっと読む必要があるので、ネット上のリソースへのポインタは素晴らしいでしょう。
virtualhost - Apache mod_jk と仮想ホスト
/taste
コンテキストをアプリケーション サーバーにリダイレクトするために、mod_jk を使用して Apache を構成しました。ここで、ドメイン名がこのコンテキストにリダイレクトされるように、仮想ホストを作成したいと思います。
httpd.conf で次の構成を試しました。
しかし、apache は /taste の部分を DocumentRoot として受け入れません。仮想ホストを mod_jk コネクタにリダイレクトするように構成するにはどうすればよいですか?
apache - Apache httpd - リクエストが送信されるサーバーを特定する方法
私はhttpdが初めてです。単一の Apache httpd サーバーを実行しており、JBoss サーバーの負荷を分散しています。ラウンド ロビン、ノンスティッキー ビット構成。どの JBoss サーバーがリクエストを受け取っているかを調べる必要があります。各 JBoss サーバーにはログインできませんが、httpd サーバーにはログインできます。
それ、どうやったら出来るの?
ありがとうございました。
WM。
apache - (Apache + Glassfish) に戦争を展開する方法
Apache Http サーバーの背後で Glassfish を使用するつもりです。私の質問は、これらのサーバーに戦争をどのようにデプロイすればよいかということです。Apache にデプロイしますか? または、戦争の内容を静的およびサーブレット/JPS(java) に分離し、静的を Apache にデプロイし、他の動的な Java を Glassfish にデプロイしますか?
RGDS
tomcat - request.getRemoteUser == null; apacheからtomcatへのすべてのトラフィックをログに記録する方法
私は次のように定義されたコネクタを持っています:
ただし、request.getRemoteUserはnullを返します。
私の質問は、ApacheログをTomcatに送信する「すべて」にする方法です。Apacheとmod_jkのログレベルを「debug」に設定しています。
どんなポインタでも高く評価されます。
apache - Apache DirectoryIndex、mod_jk、および末尾のスラッシュ
このApachemod_jk構成についての助けに感謝します(私の専門分野ではありません)。
tomcatサービス(kdxwiki)をフロントエンドするようにmod_jkをセットアップしましたが、これは正常に機能しています。ただし、サーバーで共同ホストしているApache Webサイト(websvn)を完全にバイパスするJkUnMountディレクティブを取得できません。完全に言うと、私が末尾の/を離れるときにのみ、apacheのWebサイトにアクセスできるということです。末尾の/を省略した場合、ブラウザは代わりにtomcatにリダイレクトされます。
書き換えルールを作成する必要があると確信していますが、構文がうまくいきませんでした。
スラッシュで動作します:http; // hostname / websvn /
スラッシュなしでは機能しません:http:// kdxwiki / websvnはhttp:// kdxwiki:8081 /websvn/にリダイレクトされます
worker.properties
jk.conf
websvn.conf
httpd.conf