Websphere 6.1에서 이상한 404/j_security_check 오류가 발생했습니다.
-
20-08-2019 - |
문제
Websphere 6.1 구성이 있고 애플리케이션이 실행 중이지만 일부 요청은 j_security_check로 이동하지만 마지막 요청(J_security_check와 연관된 필터가 있음)은 404 오류를 생성합니다.
예를 들어:
(1) 사용자 게시물:http://localhost:9081/Page/j_security_check 그리고 필터1에서 작동합니다, 하지만 나중에 Filter2로 요청하면 404 오류가 발생합니다.
(1a) 다음 필터는 j_security_check와 연관되어 있습니다.
<filter-mapping>
<filter-name>Filter1</filter-name>
<url-pattern>/j_security_check</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Filter2</filter-name>
<url-pattern>/j_security_check</url-pattern>
</filter-mapping>
(2) 코드가 필터 코드에 도달합니다:
chain.doFilter(req, res);
WASReqURL에는 다음과 같은 쿠키 값이 있으며 이는 j_security_check에 필요합니다.http://localhost:9081/Test/test.html
이상적으로 클라이언트는 'http://localhost:9081/Test/test.html'
그러나 j_security_check에 대한 후속 요청에서 404 오류가 발생합니다.http://localhost:9081/Page/j_security_check
또한 web.xml 파일의 관련 스니펫도 있습니다.
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/Go</form-login-page>
<form-error-page>/Go</form-error-page>
</form-login-config>
</login-config>
문제는 websphere 관점에서 'J_security_check'를 제어하는 것이 무엇인지입니다.
세부:RAD7 웹스피어 서버 6.1, 로컬 박스
해결책
이동 애플리케이션 서버 > server1 > 웹 컨테이너 > 사용자 정의 특성 그리고 확인하세요 com.ibm.ws.webcontainer.invokefilterscompatibility
변수가 true로 설정되었습니다.이 변수는 다음과 같은 역할을 합니다. j_security_check
응용 프로그램을 전환합니다.
다른 팁
이는 WebSphere 6.1 및 Spring Security에서 매우 잘 알려진 문제입니다.
관리 콘솔을 사용하여 서버 속성에 이 변수를 추가해야 합니다.
com.ibm.ws.webcontainer.invokefilterscompatibility = true
또한 정확한 버전에 따라 websphere용 패치를 설치해야 한다는 것을 기억합니다.
내가 언급한 변수에 대해 인터넷에서 찾아보면 해결책을 찾을 수 있습니다.
도움이 되길 바랍니다 ...
미겔