I 포트 8080에서 수신하고, 아파치 웹 서버가 포트 80에서 수신하고 443톰캣 아파치 뒤에 아파치는
아파치 프록시 클라이언트를 통해, 바람둥이을 (아파치가 작동, 바람둥이 오류 500를 반환) ajp를 통해 바람둥이로. 이것은 매력처럼 작동합니다.
위 인용문은 잘못되었습니다. 나는 실수로 ajp-protocol을 사용하도록 프록시를 설정한다고 가정 했었지만 실제로는 일반 http를 사용했습니다. 이것은 또한이 질문의 대답으로 이어집니다.
그러나 https를 통해 연결을 시도하면 기록되지 않은 오류 500이 표시되는 보안 연결이됩니다. 어디서나. 내 생각 엔, httpd (443)에 대한 https 연결이 작동하고, ajp-proxy도 작동하지만, Tomcat은 내가 모르는 것을 기대합니다.
나는 이미 포트 8443과 8080에 프록시를 연결하려고 시도했다. 모든 트래픽이 httpd를 통해 어쨌든 리디렉션되기 때문에 내 의견으로는 포트 8080에서 tomcat을 액세스하는 것으로 충분할 것이라고 생각한다. 여기
구성입니다 :/등/아파치/사이트-가능/기본-SSL
<IfModule mod_ssl.c>
ErrorLog /var/log/apache2/ssl_engine.log
LogLevel error
NameVirtualHost *:443
<VirtualHost *:443>
ServerName www.doma.in
ServerAlias doma.in
ServerSignature Off
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl_certificate.crt
SSLCertificateKeyFile /etc/ssl/certs/ssl_certificate.key
SSLCertificateChainFile /etc/ssl/certs/intermediate_ca.crt
ProxyPass/ajp://localhost:8080/ retry=0 timeout=240
ProxyPassReverse/ajp://localhost:8080/
</VirtualHost>
</IfModule>
/etc/tomcat7/server.xml
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.JasperListener" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" URIEncoding="UTF-8" redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URLEncoding="UTF-8" />
<!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8080" URLEncoding="UTF-8" /> also tried this, but same result. -->
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"></Host>
</Engine>
</Service>
</Server>
불행하게도 내가 할 수있는 오류가 나타나지 않기 때문에 모든 로그를 제공하지 않습니다.
이 아이디어를 만드는 방법에 대한 아이디어가 있으십니까?
감사 Z
'ProxyPass/ajp : // localhost : 8080 /'와 같은 proxypass 지시어에 슬래시를 매치하고 다시 시도해보십시오. 사이드 노트에서는 RewriteEngine을 전혀 사용할 필요가 없으므로 제거 할 수도 있습니다. –
@ ezra-s 누락 된 슬래시를 추가했습니다. 불행히도 이것은 결과를 바꾸지 못했습니다. RewriteEngine은 일부 URL 조정에 사용하는 블록의 나머지 부분입니다 (테스트중인 URL에는 적용되지 않습니다). – zoku