如何在HTTP应用程序上启用Apache SSL反向代理

如何在HTTP应用程序上启用Apache SSL反向代理,apache,ssl,proxy,Apache,Ssl,Proxy,我在尝试在Apache上为Ubuntu 14.04上的HTTP应用程序实现反向SSL代理时遇到了问题。作为基准,当我在浏览器中通过端口8000正常访问应用程序时,它工作正常。出于所有目的,假设我的应用程序的IP是192.141.56.11,我还没有域名。应用程序使用HTTP Basic Auth运行,我不知道它是否相关。基本上,我在这里钓到了一些明显的错误,如果你能帮助我,我将不胜感激。以下是我的过程日志: 我创建了SSL证书和密钥,并将它们放在以下位置: /etc/apache/ssl/apa

我在尝试在Apache上为Ubuntu 14.04上的HTTP应用程序实现反向SSL代理时遇到了问题。作为基准,当我在浏览器中通过端口8000正常访问应用程序时,它工作正常。出于所有目的,假设我的应用程序的IP是192.141.56.11,我还没有域名。应用程序使用HTTP Basic Auth运行,我不知道它是否相关。基本上,我在这里钓到了一些明显的错误,如果你能帮助我,我将不胜感激。以下是我的过程日志:

我创建了SSL证书和密钥,并将它们放在以下位置:

/etc/apache/ssl/apache.crt (I performed chmod 644 here)
/etc/apache/ssl/apache.key (I performed chmod 400 here)
然后我安装了:

apt-get install apache2
a2enmod proxy
a2enmod ssl
a2enmod proxy_http
然后,我使用以下命令禁用了默认配置:

a2dissite 000-default
我创建了文件/etc/apache2/sites available/redirect.conf

然后,我创建了文件/etc/apache2/sites available/redirect.conf并复制了以下文本:

<VirtualHost *:80>
    Redirect "/" "https://192.141.56.11"
</VirtualHost>
我现在尝试在Chrome浏览器的另一台机器上访问应用程序的UI。尝试时:

https://192.141.56.11
我得到一个一般的SSL连接错误

然而,尝试

http://192.141.56.11:8000
给我应用程序,好像我的配置没有改变任何东西。但是,

192.141.56.11:80
给我一个带有html文件夹的页面索引,上面写着192.141.56.11端口80的Apache/2.4.7 Ubuntu服务器

192.141.56.11:443
除了在192.141.56.11端口443的Apache/2.4.7 Ubuntu服务器上,我得到了相同的结果


我尝试了各种配置方式,但无法得到我想要的-这里有什么想法吗?

编辑:我尝试了https[:]//192.141.56.11,但得到了一个更具体的SSL错误:

received a record that exceeded the maximum permissible length. (Error code: ssl_error_rx_record_too_long) 
EDIT2:在运行apache之后,我得到了这个警告

apache2: Could not reliably determine the server's fully qualified domain        name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
我想这很好,因为我使用的是IP而不是域名

编辑3:结果我需要做:

a2ensite reverse_proxy.conf.
现在https[:]//192.141.56.11可以工作,但默认为apache页面。正在做这个

伊迪丝4:我不得不这么做 a2dispate default-ssl.conf

现在它实际上重定向到https[:]//192.141.56.11!!但我仍然可以通过端口8000访问该应用程序,这很糟糕{仍在工作}

EDIT5:最后,我想不出如何通过Apache上的8000端口阻止对原始应用程序的访问。相反,我只是在服务器上实现了iptables,以便只能通过HTTPS访问它。这可能不是正确的方法。但我能想到的一切

apache2: Could not reliably determine the server's fully qualified domain        name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
a2ensite reverse_proxy.conf.