Tôi có cấu hình apache với proxy ngược (IP của máy chủ này: 192.168.1.82
) để xử lý máy chủ D9 mới của tôi:
192.168.1.82 : 443 được chuyển đến 192.168.1.87 dưới dạng HTTP(80)
<VirtualHost *:443>
ServerName www.mydomain.be
ServerAlias mydomain.be
NameVirtualHost www.mydomain.be
ProxyPreserveHost On
ProxyPass / http://192.168.1.87:80/
ProxyPassReverse / http://192.168.1.87/
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off
SSLProxyVerify none
...
</VirtualHost>
Tôi nghĩ nó được gọi là Chấm dứt SSL
192.168.1.82 : 80 được chuyển hướng thành https (443)
<VirtualHost *:80>
ServerName www.mydomain.be
Redirect permanent / https://www.mydomain.be/
</VirtualHost>
192.168.1.87 : cài đặt.php
$settings['reverse_proxy'] = TRUE;
$settings['reverse_proxy_addresses'] = [
'192.168.1.82',
];
$_SERVER['HTTPS'] = 'bật';
$settings['ssl'] = TRUE;
Thật không may, tính năng tự động hoàn thành của trường tham chiếu thực thể yêu cầu điểm cuối không phải https (không an toàn) (Nội dung hỗn hợp):
http://www.mydomain.be/fr/entity_reference_autocomplete/node/default:node/3veI...I?q=t
Tôi có thể làm gì để buộc https... Tôi sẽ chấp nhận cách hack xấu xí nhất nếu nó hoạt động (vâng, tôi ở đây)
kiểm tra 1: ProxyPass https thay vì http [sẽ không hoạt động, xem bên dưới]
Tôi đã điều chỉnh máy chủ ảo 82 như sau;
SSLProxyEngine bật
ProxyPass / https://192.168.1.87/
ProxyPassReverse / https://192.168.1.87/
=> Lần này tôi không gặp vấn đề về nội dung hỗn hợp, nhưng tôi có ERR_TOO_MANY_REDIRECTS
một lần nữa cho điểm cuối tự động hoàn thành thực thể này
kiểm tra 2: hack Symfony\Component\HttpFoundation\Request::isSecure()
Đây là chức năng isSecure() mới của tôi:
hàm công khai isSecure(){
trả về ĐÚNG;
}
Bằng cách này, url tự động hoàn thành sử dụng https, nhưng lần này, tôi nhận được ERR_TOO_MANY_REDIRECTS
NHẬN https://www.mydomain.be/fr/entity_reference_autocomplete/node/default%3Anode/3ve...I?q=T net::ERR_TOO_MANY_REDIRECTS
Tôi thực sự không biết nó có thể đến từ đâu