nginx ssl virt host 问题 - 网站无法加载

nginx ssl virt host 问题 - 网站无法加载

我已经为端口 80 和 443 配置了 nginx,其中 443 包含 ssl 证书配置。当我重新启动 nginx 时,没有出现任何错误,因此我不认为这是证书问题,但我当然可能是错的。

但是,当我加载

https://picantewsdev.hotsalsainteractive.com/logo/game/1f126552-9ac4-4db2-b7ce-cede6f38f7ea/ef0c3db2-7cf8-4dc3-bada-625c77cdff80

我收到“页面无法显示...”浏览器消息。而且,我甚至没有看到请求到达服务器。

但如果我加载

http://picantewsdev.hotsalsainteractive.com/logo/game/1f126552-9ac4-4db2-b7ce-cede6f38f7ea/ef0c3db2-7cf8-4dc3-bada-625c77cdff80

请求到达服务器(尽管出现 500 错误,但目前没有问题)。

有任何想法吗?

我们并没有使用负载均衡器。这是一台托管在 Rackspace 上的服务器。也没有硬件防火墙之类的东西。

这是 nginx 配置:

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /usr/share/nginx/html/public;
    index index.php index.html index.htm;

    server_name picantewsdev.hotsalsainteractive.com;

    location / {
            try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
            fastcgi_split_path_info ^(.+.php)(/.+)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            # add the following line in for added security.
            try_files $uri =403;
    }
}

server {
    listen 443;
    listen [::]:443 default_server ipv6only=on;

    root /usr/share/nginx/html/public;
    index index.php index.html index.htm;

    ssl on;
    ssl_certificate /etc/nginx/ssl_cert/star.hotsalsainteractive.com.chained.crt;
    ssl_certificate_key /etc/nginx/ssl_cert/star_hotsalsainteractive_com.key;

    ssl_session_timeout 5m;

    ssl_protocols SSLv3 TLSv1;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;

    server_name picantewsdev.hotsalsainteractive.com;

    location / {
            try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
            fastcgi_split_path_info ^(.+.php)(/.+)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            # add the following line in for added security.
            try_files $uri =403;
    }
}

任何帮助,将不胜感激。

谢谢!

答案1

您需要将 ssl 添加到 listen 指令中,如下所示:

listen 443 ssl;

ssl on;指令适用于旧版 nginx,可能不再受支持。上述格式是当前将 SSL 应用于 vhost 的方法。

答案2

您的机器不接受端口 443 上的连接。这就是 http 链接有效而 https 链接无效的原因。

这可能是因为您在更改配置后没有重新加载 nginx,或者因为您没有在防火墙中打开端口 443。

相关内容