Я сейчас делаю домашнюю работу по переходу с apache без кеширования на nginx с кешированием, возможно, через лак ...
После прочтения различных блогов, статей, вопросов о сбоях сервера и т. Д. Я понимаю, что varnish не может работать с ssl, и что varnish может быть лучше, чем nginx для реального кеширования динамического контента. Но я немного застрял в понимании того, как работает кеширование nginx И как nginx + varnish могут работать вместе, когда требуется ssl.
Как будет реализовано следующее: с nginx + varnish ИЛИ только с nginx с кешированием?
некоторые URL-адреса, управляемые настраиваемым движком php: т.е. example.com/this-page обслуживается example.com/index.php?p=this-page
некоторые URL-адреса управляются wordpress: т.е. example.com/blog/this-article обрабатывается wordpress через example.com/blog/index.php?p=this-article
должен принудительно использовать ssl везде: т.е. http://example.com/* перенаправляет на https://example.com/*
www должен перенаправлять на верхний домен: т.е. http://www.example.com/* перенаправляет на https://example.com/*
Все это обслуживает кешированную версию, если она существует (если я понимаю, кеширование зависит от времени, поэтому, если я сделаю обновление на этой странице, мне нужно будет вызвать PURGE, если маршрут лакировки, и вручную удалить файлы, если маршрут nginx)
Если вы хотите использовать nginx и Varnish, я бы предложил что-то вроде этого.
Итак, в основном у вас будет такой стек:
nginx -> Varnish -> nginx -> php-fpm
Четыре пункта, упомянутых вами, будут решены следующим образом.