EC2 单实例返回 SSL 端口 80

EC2 单实例返回 SSL 端口 80

我在 AWS 的弹性 IP 上运行了一个单实例 EC2 LAMP 服务器。我创建了一个自签名证书并启用了 mod_ssl。目前,我能够通过 https 成功访问我的网站(接受未签名的证书后),但当我实际查看 PHP 中的 $_SERVER['SERVER_PORT'] 变量时,EC2 仍然通过端口 80 为我的 https 请求提供服务。为了检查这一点,我使用以下脚本:

<?php
    echo $_SERVER['SERVER_PORT'].'<br>';
    echo $_SERVER['REQUEST_SCHEME'].'<br>';
?>

结果:

80
http

但是,当我查看所有浏览器中的 URL 栏时,它都显示安全连接。我的浏览器实际上是在测试证书和安全连接,还是只是在寻找以“https”开头的 URL?是否有某个配置文件将 SSL 流量重定向回端口 80?

答案1

如果你反复运行 php 脚本httpshttp你应该得到以下输出:

[root@wcmisdlin02 ~]# /usr/lib64/nagios/plugins/check_http -H localhost -u /php/phpinfo.php -v | grep SERVER_PORT
<tr><td class="e">SERVER_PORT </td><td class="v">80 </td></tr>
<tr><td class="e">_SERVER["SERVER_PORT"]</td><td class="v">80</td></tr>
[root@wcmisdlin02 ~]# /usr/lib64/nagios/plugins/check_http -H localhost -u /php/phpinfo.php -v --ssl | grep SERVER_PORT
<tr><td class="e">SERVER_PORT </td><td class="v">443 </td></tr>
<tr><td class="e">_SERVER["SERVER_PORT"]</td><td class="v">443</td></tr>
[root@wcmisdlin02 ~]# 

相关内容