Мы планируем обновить наше веб-приложение с собственного приложения на основе php до приложения на основе PHP Framework (Laravel), чтобы повысить безопасность и производительность приложения. Моя задача - разделить трафик, где каждый запрос указывал на домен app.localhost
без постфикса /v3
по-прежнему перенаправляется в старое приложение на php-родной
узел веб-сервера и проксировать все запросы с помощью /v3
путь к ларавель
узел веб-сервера. Ниже приведена моя конфигурация, в результате которой все активы (css и js) и URL-адреса, сгенерированные Laravel, указывали на корневой путь.
Сгенерированный Laravel URL указывал на старое приложение
Фронтальный прокси (общедоступная сеть)
сервер {
слушать 80;
слушать [::]:80;
имя_сервера app.localhost;
# Собственное PHP-приложение
место расположения / {
proxy_set_header Хост $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://php-native/;
}
# Laravel (приложение v3)
местоположение /v3/ {
proxy_set_header Хост $host;
proxy_set_header X-Real-IP $remote_addr;
прокси_пасс http://laravel/;
}
}
Веб-серверы (частная сеть)
php-родной
Веб сервер
сервер {
слушать 80;
слушать [::]:80;
имя_сервера app.localhost;
корень /usr/share/nginx/html/webapp/app;
место расположения / {
индекс index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
расположение ~ \.php$ {
fastcgi_pass php56-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/webapp/app/$fastcgi_script_name;
включить fastcgi_params;
}
}
ларавель
Веб сервер
сервер {
слушать 80;
имя_сервера app.localhost;
корень /usr/share/nginx/html/webapp/app-v3/public;
индекс index.php index.html index.htm;
место расположения / {
индекс index.php index.html index.htm;
try_files $uri $uri/ /index.php?$query_string;
}
расположение ~ \.php$ {
fastcgi_pass php74-fpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/webapp/app-v3/public/$fastcgi_script_name;
включить fastcgi_params;
}
}
Спасибо
Обновлять
Мой вопрос: как разделить трафик, чтобы любой запрос указывал на app.localhost
все еще направляется в php-родной
веб-сервер и все запросы указывали на приложение.localhost/v3
указал на ларавель
веб сервер ?