Intenționăm să facem upgrade aplicației noastre web de la aplicația nativă php la bazată pe framework PHP (Laravel) pentru a îmbunătăți securitatea și performanța aplicației. Sarcina mea este să împărți traficul acolo unde fiecare solicitare a îndreptat către domeniu app.localhost
fără postfix /v3
încă transmisă la vechea aplicație php-nativ
nod server web și proxy toate cererile cu /v3
cale spre laravel
nod server web. Mai jos este configurația mea, care rezultă din toate activele (css și js) și URL-ul generate de Laravel au indicat calea rădăcină.
Adresa URL generată de Laravel a indicat aplicația veche
Proxy frontal (rețea publică)
Server {
asculta 80;
asculta [::]:80;
nume_server app.localhost;
# PHP Native APP
Locație / {
proxy_set_header Gazdă $gazdă;
proxy_set_header X-Real-IP $adresă_la distanță;
proxy_pass http://php-native/;
}
# Laravel (APP v3)
locație /v3/ {
proxy_set_header Gazdă $gazdă;
proxy_set_header X-Real-IP $adresă_la distanță;
proxy_pass http://laravel/;
}
}
Servere web (rețea privată)
php-nativ
Server Web
Server {
asculta 80;
asculta [::]:80;
nume_server app.localhost;
root /usr/share/nginx/html/webapp/app;
Locație / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
locație ~ \.php$ {
fastcgi_pass php56-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/webapp/app/$fastcgi_script_name;
include fastcgi_params;
}
}
laravel
Server Web
Server {
asculta 80;
nume_server app.localhost;
root /usr/share/nginx/html/webapp/app-v3/public;
index index.php index.html index.htm;
Locație / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
locație ~ \.php$ {
fastcgi_pass php74-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/webapp/app-v3/public/$fastcgi_script_name;
include fastcgi_params;
}
}
Mulțumiri
Actualizați
Întrebarea mea este: cum să împărțim traficul, așa că orice solicitare a vizat app.localhost
încă transmis către php-nativ
server web și toate cererile vizate app.localhost/v3
indreptat spre laravel
server web?