ssl - 单个 nginx 虚拟服务器如何处理端口 80 和 443?

标签 ssl nginx

我有一个带有虚拟服务器设置的配置文件,它在用于 ssl 的端口 443 上运行。我还希望这个虚拟服务器能够处理端口 80 上的非 SSL 流量。

我希望执行以下操作,但它似乎不起作用。

server {
    listen 443 ssl;
    listen 80;
    server_name example.com;
    ...
}

看起来这些设置下的 ssl 选项导致非 ssl 流量出现问题。

最佳答案

当然可以。

server {
  listen 80;
  listen 443 ssl;
  # force https-redirects
  if ($scheme = http) {
    return 301 https://$server_name$request_uri;
  }
}

这是我的帖子,名称为“Nginx Configuration for HTTPS”,其中包含更多信息。

关于ssl - 单个 nginx 虚拟服务器如何处理端口 80 和 443?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25399814/

相关文章:

ssl - Hashicorp Consul - 如何从 Kubernetes 集群中的 Pod 中执行经过验证的 TLS

android - 如何更新固定的SSL证书Android

django - aws、django、unicorn 和 s3 - 那么我需要 nginx 吗?

angularjs - 将 IP 地址绑定(bind)到 nginx 上托管的 Angular 站点

nginx - 如何将nginx请求重定向到不同的路径

java - 在 android-j2se 上使用 SSL 与服务器客户端套接字通信

ssl - 我们可以在同一个 IIS 网站上使用多个域 SSL 证书吗?

svn - 使用 NGINX 在 Ubuntu 上安装 Subversion,而不是 Apache

ssl - 免费测功机是否使用 SSL/TLS 连接?

.net - nginx 负载均衡器和长连接 - 目标总是相同吗?