Nginx

Nginx重寫規則讓php看到https方案

  • May 9, 2022

即使安全連接已經終止,我也希望我的 pho 應用程序只能看到 https 方案。

我有以下設置:瀏覽器 –https–> nginx –http–> nginx –> php-fpm socket

現在我需要 php 應用程序只記錄原始 https 方案請求。

這甚至可能嗎?

我看到的唯一選擇是使 nginx 到 nginx 的流量也通過 https。但我想避免本地流量的成本。

解決方案是使用fastcgi_param REQUEST_SCHEME 'https';after覆蓋屬性include fastcgi.conf;

location ~ \.php$ {
   fastcgi_split_path_info ^(.+\.php)(/.+)$;
   # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

   #   # With php5-cgi alone:
   #   fastcgi_pass 127.0.0.1:9000;
   # With php5-fpm:
   fastcgi_pass unix:/run/php/php7.4-fpm.sock;
   fastcgi_index index.php;
   include fastcgi.conf;
   fastcgi_param   REQUEST_SCHEME  'https';
   fastcgi_param   HTTPS           'on';
}

引用自:https://serverfault.com/questions/1100387