0

ページネーション用の表示タグを含む JSP ページを作成しています。表示タグでページを切り替えると、URL を介して渡されるデータがいくつかあります。

ページを切り替える際のローカル システムでの観察では、URL の長さが 3000 文字を超え、アドレス バーから URL をコピーすると、2083 文字に切り詰められています。しかし、システムは期待どおりに機能します。

しかし、QA と製品では、同じシナリオで 403 エラーが発生します。

URL の最大長が 2083 文字の IE ブラウザを使用しています。

私が疑うのは、QA で使用される jboss サーバーであり、URL の長さが特定の制限を超えている場合、prod は 403 を送信します。これは可能ですか?この問題は JBOSS サーバーに何らかの関係があると確信していますが、それが何であるかを正確に把握することはできませんでした。

4

1 に答える 1

1

403 エラー コードは禁止を意味するため、奇妙です。しかし、おっしゃる通り、Internet Explorer が扱える URL の最大長は 2083 であるため、URL は切り捨てられます (JBoss の問題ではないようです)。

それでも、JBoss で許可されている URL の長さを増やしたい場合は、maxHttpHeaderSizeを増やしてみることができます(指定しない場合、デフォルトでは 8192 バイトです)。これは Web サーバーの server.xml で実行できます (たとえば、JBoss 5.1 では deploy/jbossweb.sar/server.xml にあります)。このファイルでは、使用する HTTP または HTTPS コネクタにパラメーター (まだ存在しない場合) を追加する必要があります。次に例を示します。

<Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}" 
       connectionTimeout="20000" redirectPort="8443" maxHttpHeaderSize="65536"/>

しかし、ご提供いただいた情報によると、この問題は Internet ExplorerのURL の長さ制限に直接関係しているようです。

于 2013-02-06T09:59:42.607 に答える