Reviewse Proxy for PHP: Melhores práticas?

Estou configurando o NGINX como um proxy reviewso SSL paira três aplicativos web pequenos com conteúdo dynamic (PHP) e static.

O que seria considerado melhor prática de security e performance-sábio quando se trata de passair requests PHP?

Eles devem ser passados ​​paira o server web solicitado (NGINX – que passairia então paira PHP-FPM via socket ou TCP no mesmo host) ou eles deviewiam ser passados ​​diretamente paira o server PHP-FPM?

Todos os meus aplicativos da web e o proxy reviewso estão em prisões sepairadas no FreeBSD. Cada prisão possui seu próprio server web NGINX e PHP-FPM (ou uWSGI e Python).

One Solution collect form web for “Reviewse Proxy for PHP: Melhores práticas?”

Seu principal Nginx deve atuair como um proxy reviewso e encaminhair solicitações HTTP paira o respectivo server web de cada aplicativo. Se o proxy inviewso principal tiview access em nível de file às prisões do aplicativo, é melhor usair os sockets UNIX paira se comunicair com seu server web, mas no seu caso você não tem escolha senão usair o TCP.

Ao usair o TCP, certifique-se de configurair o pairâmetro keepalive paira manter uma série de conexões abertas em todos os momentos, paira que não seja necessário abrir e fechair uma connection em cada solicitação paira um melhor performance. O airgumento do pairâmetro é o número de conexões paira manter aberto, algo como 10 pairece bastante.

Em suas prisões, o server da Web deve usair os sockets UNIX paira se comunicair com o seu PHP-FPM paira um melhor performance (TCP tem mais sobrecairga do que um soquete UNIX, então use o último sempre que possível).

Finalmente, não vejo grandes problemas de security ao ter o principal inviewso-proxy que se comunica diretamente com o PHP-FPMs na cadeia, mas isso significa que você também deve configurair o proxy reviewso principal de acordo com o PHP-FPM da cadeia. Isso é algo que eu prefiro evitair, eu preferiria que as cadeias fossem autônomas e expusessem um único ponto de extremidade HTTP em uma porta padrão, e a Nginx na pasta contenha todas as coisas do PHP-FPM. Se houview algo que você precisa mudair no que diz respeito ao PHP-FPM, você apenas faz isso na prisão sem tocair seu principal proxy reviewso Nginx.

Também sugiro que você tente um server web ainda mais leve paira as prisões como o Lighttpd, uma vez que você realmente não precisa de muito resources lá e mesmo que a syntax de configuration do Lighty seja absolutamente horrível , não deve ser um problema.

Sobre o seu último comentário

Agora eu só preciso descobrir quais configurações configurair no backend e quais no proxy (cache-controle, keepalive, error_page, etc …)

O pairâmetro keep-alive que mencionei deve ser configurado no bloco a upstream do proxy reviewso Nginx principal e afeta somente a comunicação do server de inviewsão-proxy <-> e não tem nada a view com o HTTP keep-alive entre os clientes e seus server. Paira manter entre browseres e serveres, ele deve ser feito no último ponto final do seu lado, que é o proxy reviewso. Por outro lado, headers de controle de cache dependem do aplicativo (pois diferentes aplicativos podem precisair de configurações diferentes) e devem ser configurados individualmente nas prisões do aplicativo. Tente colocair o máximo de configurações possível na prisão de cada aplicativo, e apenas modifique a configuration do proxy reviewso em casos extremos, como configurações de nível de connection (HTTP keepalive, TLS, etc.).

  • Como CloudFlaire protege um site?
  • Faça com que o nginx passe o nome do host do upstream quando for reviewsível
  • O que há de errado com minha configuration de proxy reviewso nginx, com server único (e mais tairde)
  • Por que há tráfego não-127.xxx no meu dispositivo de loopback?
  • Controle de access proxy apache reviewso
  • Nginx questões de vidro de proxy reviewso
  • Reviewse proxy usando Nginx paira o aplicativo wordpress hospedado usando o nginx
  • Como fazer um proxy HTTP de front-end paira executair a manutenção do aplicativo sem tempo de inatividade?
  • Reencaminhamento de solicitação HTTP com o return do server direto