我希望我的 pho 应用程序只能看到 https 方案,即使安全连接已经终止。
我有以下设置:浏览器--https--> nginx --http--> nginx --> php-fpm 套接字
现在我需要 php 应用程序仅记录原始的 https 方案请求。
那可能吗?
我看到的唯一替代方案是让 nginx 到 nginx 的流量也通过 https。但我想避免本地流量的开销。
答案1
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';
}