Английский не мой родной язык, извините за ошибки при печати.
Я настраиваю обратный прокси-сервер Apache следующим образом, и он срабатывает.
ProxyRequests Off
SSLEngine On
SSLProxyEngine On
ProxyPass / https://example.com/
ProxyPassReverse / https://example.com/
И мой веб-сайт (PHP) поддерживает HTTP/2
, поэтому я хочу прокси-сервер по HTTP/2
.
Я включаю mod_proxy
, mod_proxy_http
, mod_ssl
, mod_http2
, mod_proxy_http2
и другие некоторые модули. И установите .php
MIME-тип как application/x-httpd-php
.
AddType application/x-httpd-php .php
VirtualHost является следующим:
<VirtualHost *:443>
DocumentRoot "/path/to/wwwroot/"
ServerName localhost:443
ProxyRequests Off
SSLEngine On
SSLProxyEngine On
ProxyPass / h2://example.com/
ProxyPassReverse / https://example.com/
# Cert
SSLCertificateFile ...
SSLCertificateKeyFile ...
</VirtualHost>
Отличается от ProxyPass / https://example.com/
до ProxyPass / h2://example.com/
.
Заголовок ответа Content-Type
в браузере всегда получает MIME-тип по умолчанию.
Вы можете найти пример в phpMyAdmin Demo , фильтр whitelist.php
в DevTools, этот файл Content-Type
равен text/javascript
.
Прокси это HTTP/2
, Content-Type
стать application/x-httpd-php
, потерял источник MIME-типа text/javascript
.
И прокси его по HTTP/1.1
, он хорошо работает.
Как я могу решить эту проблему?
Спасибо.