Hi Gavin,
The way I solved it, is by using mod_jk, together with the following httpd settings in httpd.conf:
--------------------start--------------------------
Load mod_jk module, if not yet loaded
<IfModule !jk_module>
LoadModule jk_module modules/mod_jk.so
Where to find workers.properties
JkWorkersFile modjk/workers.properties
Where to put jk shared memory
JkShmFile modjk/mod_jk.shm
Where to put jk logs
JkLogFile modjk/mod_jk.log
Set the jk log level [debug/error/info]
JkLogLevel info
Make sure Apache httpd redirect headers are sent through to Tomcat
JkEnvVar REDIRECT_URL “”
JkEnvVar REDIRECT_REMOTE_HOST “”
JkEnvVar REDIRECT_PATH “”
JkEnvVar REDIRECT_QUERY_STRING “”
JkEnvVar REDIRECT_HTTP_ACCEPT “”
JkEnvVar REDIRECT_HTTP_USER_AGENT “”
JkEnvVar REDIRECT_REMOTE_ADDR “”
JkEnvVar REDIRECT_SERVER_NAME “”
JkEnvVar REDIRECT_SERVER_PORT “”
JkEnvVar REDIRECT_SERVER_SOFTWARE “”
Send every request for .cfm and .cfc files to tomcat
JkMount /.cfm worker1
JkMount /.cfc worker1
JkMount /index.cfm/* worker1
These SES links do not work by default on tomcat :-/
#JkMount /.cfm/ worker1
#JkMount /.cfc/ worker1
Send every request for blazeDS to tomcat
JkMount /flashservices/gateway* worker1
JkMount /messagebroker* worker1
JkMount /flex2gateway* worker1
JkMount /openamf/gateway* worker1
This setting makes sure that the above JK settings are propagated into all virtual hosts
JkMountCopy All
---------------------end-------------------------
Content of my workers.properties (running on OSX):
--------------------start--------------------------
workers.tomcat_home=/usr/local/Cellar/tomcat/8.0.21
workers.java_home=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
Define 1 real worker using ajp13
worker.list=worker1
Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=127.0.0.1
worker.worker1.port=8009
worker.worker1.socket_timeout=300
worker.worker1.ping_mode=A
ping_timeout=2000
connection_pool_timeout=50
---------------------end-------------------------
This was the only way I could get these redirect_* headers to work, and I have put about 4 full days of research in this.
Kind regards,
Paul Klinkenberg
lucee.nlOp 10 feb. 2015, om 19:46 heeft Gavin Pickin <@Gavin_Pickin> het volgende geschreven:
I think we’re confusing some important aspects of this problem… although I could be wrong, and I might be.
Request Headers, Server Variables and Environment settings.
You set them and access them very differently… and it seems like Request Headers are being passed through, but only a limited set of CGI Environment Variables are.
I also found something that said the ProxyPass is sometimes called BEFORE other settings are created… which isn’t helpful… but lets hope what I found gets around that.
The other thing we are forgetting is, there are 2 requests happening, and I believe, the variables are overwriting themselves.