2013年12月9日月曜日

ApacheのAJPを使うとHttpServletResponseのsendRedirectが動いてくれない時の対処(JBoss)

http://www.jboss.org/overview/
WebサーバにApache、アプリケーションサーバにJBossを使ってAJPでWebサーバとアプリケーションサーバを結んでいるのですが、アプリケーションの方でHttpServletResponseのsendRedirectが上手く動いてくれませんでした。
Tomcatでのserver.xmlの設定をいじった方法だとインターネット上で多く見られたのですが、JBossの対処方法があまりなかったのでメモとして記載したいと思います。

目次

  1. 前提条件
  2. リダイレクト出来ない理由
  3. JBoss設定ファイルstandalone.xmlの編集
  4. 参考文献

前提条件

  • Windows XP
  • JBoss As 7.1.1 final
  • apache 2.2
  • Java 1.7.XX

リダイレクト出来ない理由

アプリケーションサーバで動いているURLでリダイレクトする為、Webサーバにアクセスしているクライアントからは違ったURLを示している為っぽいです。(詳しくは不明)

JBoss設定ファイルstandalone.xmlの編集

JBossでAJPの設定をします。
詳しくは以下のURLから

JBoss As 7とApacheとの連携方法
ポイントとしては、standalone.xmlの設定のAJPの所をschemeが「ajp」ではなく、「http」にすることです。

<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp"/>

schemがajpでも動いたのですが、リダイレクトが上手く動きませんでした。
ajpのままで動かすとapache経由でのリダイレクトが上手く返えらなくページが切り替わらない現象になりました。

参考文献

Written By : // 10:22
Category:

0 コメント:

コメントを投稿

 

About

このブログは筆者の備忘録として色々記載しています。
Powered by Blogger.