Điểm:0

Buộc nginx gửi tiêu đề HSTS cho tất cả các vị trí

lá cờ bd

Tôi có một cấu hình nginx khá phức tạp, trong đó nhiều dịch vụ khác nhau hiển thị các điểm cuối của chúng, với nhiều địa điểm{} khối.

Tôi không có nhiều quyền kiểm soát đối với tất cả các cấu hình này (vì nhiều nhóm thêm conf của riêng họ), nhưng tôi muốn thêm tiêu đề HSTS vào tất cả các phản hồi từ nginx.

Ngây thơ tôi đã thêm một

add_header Strict-Transport-Security "max-age=7776000; includeSubDomains" luôn luôn;

trong conf mặc định của tôi cho tất cả các phiên bản máy chủ{}.

Nhưng tôi đau khổ vì vấn đề cuối cùng add_header chặn chiến thắng trên conf mặc định của tôi. Bất kỳ vị trí nào có add_header trong tâm sự của họ sẽ không phải gửi tiêu đề HSTS của tôi.

I E:

[...chụp...]
người phục vụ {
  nghe 443 ssl;
  tùy chọn server_name.{{ domain }}; 
  add_header Strict-Transport-Security "max-age=7776000; includeSubDomains" luôn luôn; # tôi có thể dễ dàng thêm cái này                                               
  error_log /var/log/nginx/preference_error.log;
  access_log /var/log/nginx/preference_access.log chính;


  # / phục vụ phía trước -> proxy_pass tới vùng chứa phía trước
  địa điểm / {
    hết hạn;
    add_header Kiểm soát bộ đệm không có bộ đệm; # hai lệnh add_header này "xóa" tiêu đề hsts của tôi
    add_header X-Robots-Tag "noindex, nofollow";

    # tiêu đề proxy
    tùy chọn máy chủ proxy_set_header.{{ miền }};
    proxy_set_header X-Forwarded-Proto "https";
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-SSL-CERT $ssl_client_cert;
    proxy_set_header X-Robots-Tag "noindex, nofollow";
    proxy_set_header Nâng cấp $http_upgrade;
    proxy_set_header Kết nối "nâng cấp";

    # chuyển đến phụ trợ
    proxy_pass http://preference_upstreams/;
  }
}

Có cách nào để buộc TẤT CẢ các máy chủ/vị trí trong nginx thêm tiêu đề này mà không cần thêm thủ công vào tất cả các vị trí có chỉ thị add_header không?

lá cờ sv
Bạn đang yêu cầu một giải pháp không được Nginx hỗ trợ theo mặc định.Theo https://nginx.org/r/add_header ... // Có thể có một số lệnh add_header. Các lệnh này được kế thừa từ cấp độ cấu hình trước đó **nếu và chỉ khi** không có lệnh add_header nào được xác định ở cấp độ hiện tại. // Một cách khác là https://github.com/openresty/headers-more-nginx-module . Một cách khác là https://nginx.org/r/js_header_filter. Chúc may mắn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.