며칠 동안 나는 다음 문제에 대해 머리를 숙일 수 없습니다.
우리는 다음과 같은 애플리케이션(Faveo)을 가지고 있습니다.두 가지 요구 사항설정 마법사를 진행하려면 다음 단계를 따르세요.
HTTPS 및 MOD_REWRITE.
Faveo는 DMZ의 앞에 ReverseProxy가 있는 Apache2에서 실행되고 있습니다.
간단한 방법으로 ReverseProxy를 실행하면
location / {
proxy_pass http://XXX.XXX.XXX.XXX;
}
mod_rewrite(Faveo를 제공하는 Apache-Side가 활성화되어 있음)일하다Faveo-Wizard가 녹색으로 변합니다.
하지만 -응용 프로그램은~ 아니다함께 일했다HTTPS.
따라서 "계속"을 클릭할 수 없습니다. 클릭 해주세요! (http; mod_rewrite)
이제 다음 인수를 반복하면:
location / {
proxy_pass http://xxx.xxx.xxx.xxx;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
이제 Faveo가 호출됩니다.HTTPS 사용, 하지만mod_rewrite 작동하지 않습니다이 시간: 클릭 해주세요! (HTTPS; mod_rewrite 없음) "계속"을 클릭하는 것도 허용되지 않습니다.
어떤 아이디어가 있나요? HTTPS를 Apache에 전달하고 Apache 측에서 mod_rewrite를 계속 사용할 수 있는 방법은 무엇입니까?
NGINX 구성:
server {
listen 80;
server_name helpdesk.someurl.de;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
ssl_protocols TLSv1.2;
server_name helpdesk.someurl.de;
# Enable SSL
ssl on;
ssl_certificate /etc/letsencrypt/live/someurl.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/someurl.de/privkey.pem;
client_max_body_size 50M;
ssl_session_timeout 5m;
# Set global proxy settings
proxy_read_timeout 360;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://XXX.XXX.XXX.XXX/;
}
error_log /var/log/nginx/helpdesk-ssl-error.log;
access_log /var/log/nginx/helpdesk-ssl-access.log;
}
아파치2:
<VirtualHost *:80>
ServerName helpdesk.someurl.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/faveo/public
<Directory /var/www/faveo/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
지금 삭제하면
proxy_set_header Host $http_host;
NGINX-Config에서 HTTPS는 비활성화되어 있지만 mod_rewrite는 작동합니다.
활성화되면 HTTPS가 제공되지만 mod_rewrite는 제공되지 않습니다.