2013-02-12 2 views
1

mod_proxy_ajp를 사용하여 Tomcat 서버로 요청을 전달하는 apache를 설정했습니다. 요청이 도착하면 내 가치를 잃는 것 같습니다. 요청이 바람둥이로 곧바로 들어 왔을 때이 작업은 정상적으로 진행되었으므로 아파치가 값을 스트립하는 것처럼 보입니다.mod_proxy_ajp 쿠키 값이 제거되었습니다

도움을 주시면 감사하겠습니다.

브라우저 :
위 예제 코드는 MyCookie
값 = ID = 12345
패스 =/
도메인 = mydomain.org

톰캣 :
위 예제 코드는 MyCookie
값 = ID = 패스
null
도메인 = null

구성 :

LoadModule proxy_module     /usr/lib64/apache2-prefork/mod_proxy.so 
LoadModule proxy_ajp_module     /usr/lib64/apache2-prefork/mod_proxy_ajp.so 
LoadModule rewrite_module     /usr/lib64/apache2-prefork/mod_rewrite.so 
<VirtualHost *:80> 
ServerName server.domain.org 
ServerAlias server.domain.org 
Header set Access-Control-Allow-Origin "*" 
Header set Access-Control-Allow-Methods "GET,POST,OPTIONS" 
Header set Access-Control-Allow-Headers "content-type,x-requested-with" 

RewriteEngine on 
RewriteRule ^/$ /vaultWeb [PT] 

<Directory /> 
Options All 
Order Deny,Allow 
Allow from all 
</Directory> 

ProxyRequests off 

<Proxy *> 
Order Deny,Allow 
Allow from all 
</Proxy> 

<Location /> 
Order Deny,Allow 
Allow from all 
</Location> 

ProxyPass /app1 ajp://localhost:18009/app1 
ProxyPass /app2 ajp://localhost:8009/app2 
ProxyPass /app3 ajp://localhost:8009/app3 
ProxyPass /app4 ajp://localhost:18009/app4 
ProxyPass /app5 ajp://localhost:9008/app5 
</VirtualHost> 
+0

더 많은 조사 결과 등호가 문제라는 것을 알 수 있습니다. 쿠키가 ID = thevalue가 아닌 값이면 get 값이 전달됩니다. 여전히 문제는 가치가 등호를 가질 수 있기 때문이며, 또한 가치가 박탈 당하기 때문입니다. – wellmstein

답변

0

확인은 아파치 나 톰캣 중 하나가 '도움'하고 쿠키 버전 0 이었기 때문에, 그 규격으로 승인하지 않은 문자가 제거되고 있었다 것으로 보인다. 이 경우 등호 (및 그 뒤에 오는 모든 것). 쿠키를 설정하는 서버를 제어 할 수 없기 때문에 쿠키를 인코딩하는 것이 최선의 방법이었습니다. 그런 다음 URLDecoder를 사용하여 값을 디코딩했습니다. 붐 등호와 모든 것.

관련 문제