嗨,我正在尝试将 rack ssl 与我的 nginx 一起使用。除了通过 nginx 充当代理的静态蜻蜓图像之外,所有页面上的一切都运行良好。这是配置的一部分(在非 ssl 模式下,ofc 所有图像都可以正常使用)。知道如何解决这个问题吗?:
server {
listen 0.0.0.0:443;
server_name server.com;
root /home/rails/production/current/public;
passenger_enabled on;
rails_env production;
ssl on;
ssl_certificate some.crt;
ssl_certificate_key some.key;
location /home {
rewrite ^ https://www.example.com/ permanent;
}
location /media {
try_files $uri @media;
}
location @media {
proxy_redirect off;
proxy_pass http://unix:/tmp/nginx-production.sock;
proxy_store /home/rails/production/current/public$uri;
proxy_store_access user:rw group:rw all:r;
}
}
编辑 - - -
好的,我更进一步。我发现我的 nginx conf 的一部分有这个:
server {
listen unix:/tmp/nginx-production.sock;
root /home/rails/production/current/public;
passenger_enabled on;
rails_env staging;
}
ofc 你看到 rails_env 是错误的,所以我将其更改为生产,如果它不是通过 ajax 请求填充的,所有图像都会返回正常。所以寻找继续:(
编辑 ------ 也发现了这个。所有未在 ssl 下呈现的图像的 URL 为:https:///media/ chrome 显示 502
但是 redner 有:https:///media/?
我开始这与蜻蜓的使用方式有关吗?那为什么有些人可以,有些人不行...