我被要求将Debian上运行Apache和Tomcat-6的服务器从HTTP升级到HTTPS。我已经成功地在Apache部分获得并安装了SSL证书,并检查它们是否工作(使用两个不同的SSL检查程序)。
接下来,我在/etc/apache2/sites-available/default-ssl中添加了以下块:
<VirtualHost *:80>
ServerName server.name
Redirect permanent / https://server.name/
</VirtualHost>下面是同一个文件中的<VirtualHost _default_:443>块的末尾:
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/在Tomcat端,/etc/tomcat6/server.xml文件包含两个活动连接器:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8"
redirectPort="8443" />
<Connector address="127.0.0.1" port="8009" protocol="AJP/1.3" redirectPort="8443" />现在,当我进入https://server.name/app/main/login.jspx时,我得到了一个SSL连接,但是它在登录后消失了。
如果我转到https://server.name/app,就会立即重定向到http://server.name/app/main/login.jspx (没有SSL)。
(如果我只转到https://server.name/,就会在/var/lib/tomcat6/webapps/ROOT/index.html中定义的重定向页面上结束。)
我做错了什么?我需要使用AJP代理吗?
发布于 2016-05-03 12:47:50
如果在代理配置中使用此连接器,请配置proxyName、proxyPort。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8"
redirectPort="8443"
scheme="https"
proxyName="server.name"
proxyPort="443"
secure="true" />您还需要将scheme和secure属性分别设置为https代理的值https和true。
要将http重定向到apache服务器中的https,请尝试在默认配置/etc/apache2/sites-available/000-default.conf中添加指令。
https://serverfault.com/questions/774300
复制相似问题