Имеется 2 сервера и 1 ip, на одном сервере nginx, на другом apache2 и несколько сайтов
сделал вот такой конфиг для проксирования при помощи nginx на apache, установил let's encrypt и все нормально работает
proxy.conf
server {
if ($host = kp.site1.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = site1.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = site3.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = site2.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name site1.com site2.com kp.site1.com site3.com;
access_log /var/log/nginx/ssl-access.log;
location / {
proxy_pass http://10.10.10.20/;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass_header Set-Cookie;
}
}
server {
listen 443;
server_name site1.com site2.com kp.site1.com site3.com;
access_log /var/log/nginx/ssl-access.log;
location / {
proxy_pass http://10.10.10.20/;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass_header Set-Cookie;
}
ssl_certificate /etc/letsencrypt/live/site2.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/site2.com/privkey.pem; # managed by Certbot
}
но нужно отдавать одну конкретную страницу site1.com/blabla/bla.php по http, каким образом это сделать?
добавление
location = https://site1.com/blabla/bla.php {
root http://site1.com/blabla/bla.php;
}
не работает, либо я что-то не так делаю