Mam problem z niepoprawnym nagłówkiem HTTP Response Content-Type
podczas uzyskiwania dostępu do usługi WWW Axis2 hostowanej w Tomcat za Apache przez złącze AJP/1.3.Jak zachować nagłówek Content-Type odpowiedzi HTTP Tomcat wysłanej przez złącze AJP do Apache za pomocą mod_proxy
mogę uzyskać dostęp do usługi internetowej bez problemów w przeglądarce poprzez relaksującego interfejsu i mogę zobaczyć wyniki, ale jakoś Apache zmienia nagłówek odpowiedzi Content-Type
wysłana przez Tomcat z text/xml
do text/plain
i to powstrzymuje mnie od spożywania usługę internetową poprzez SOAP w NetBeans, z powodu wyjątku od Unsupported Content-Type: text/plain Supported ones are: [text/xml]
.
Oto odnośny fragment mojego konfiguracji Apache vhostów:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName myserver.example
ServerAlias other.myserver.example
ProxyPreserveHost On
SetEnv force-proxy-request-1.0 1
SetEnv proxy-nokeepalive 1
<Location /axis2/services>
ProxyPass ajp://localhost:8009/axis2/services
ProxyPassReverse ajp://localhost:8009/axis2/services
</Location>
</VirtualHost>
a odpowiednim przekroju moim Tomcat server.xml:
<Connector port="8009" protocol="AJP/1.3" redirectPort="9443" />
<Connector port="9443" protocol="HTTP/1.1" SSLEnabled="true" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
SSLCertificateFile="path/to/bundle"
SSLCertificateKeyFile="path/to/key"
SSLPassword="S3cr3t"
proxyName="myserver.example" proxyPort="443" />
Gdybym dostęp do WS bezpośrednio w Tomcat przy użyciu domyślnego złącze na porcie 8080 Dostaję poprawną content-type
, ale jeśli mam dostęp do niego przez Apache, to dostaję text/plain
, więc jest to zdecydowanie problem z proxy.
Jak mogę rozwiązać ten problem?
EDIT: Dostałem go do pracy za pomocą złącza HTTP Tomcat dla proxy, zamiast AJP jednym, ale wolałbym użyć mod_ajp jeśli znajdę roztwór roboczy.
Właśnie zmienił
ProxyPass ajp://localhost:8009/axis2/services
ProxyPassReverse ajp://localhost:8009/axis2/services
linie
ProxyPass http://localhost:8080/axis2/services
ProxyPassReverse http://localhost:8080/axis2/services
http://markmail.org/message/btwcnbl2i7ftwj4n#query:apache%20ajp%20changes%20Content -Type% 2Bpage + page: 1 + mid: btwcnbl2i7ftwj4n + state: wyniki wydają się być powiązane z Twoim problemem – JoseK
Tak, to ten sam problem i znalazłem już kilka archiwów pocztowych, takich jak ten z 2007 roku przed opublikowaniem pytania tutaj, ale nadal mogę znaleźć rozwiązanie tego problemu. – tsbnunes