Советую взять ReactJs, VUI для морды ( делайте все по феншую как доке ) ( тут ваши знания пригодятся)
PHP для админки быстро и REST ( да и друг скучать не будет)
Если вы не уверены в старте то лучше будет взять и все cделать на php7.1+ ( это будет быстрей и дешевле)
Выстрелило поползли вверх переписываем бекенд rest на более производительный ЯП. Nodejs, Go.
Если всетеки не убедил:
у меня базовый набор (никаких експресов фреймворков( толку ноль) )
https://www.npmjs.com/package/router -- роутер
https://www.npmjs.com/package/request-- curl
https://www.npmjs.com/package/mysql -- и ежу понятно ( кстати эта штука работает быстрей чем в php)
https://www.npmjs.com/package/async -- не люблю промисы медленные на больших итерациях проигрывают колбек реализации в 2 раза.
https://www.npmjs.com/package/ejs -- шаблонизатор
запускаем приложение через pm2
настройка только ngnix
для nodejs нужно делать проксирование через upstream
берем отдельный субдомен или на конкретный урл
upstream app_node {
ip_hash;
server 127.0.0.1:3000 weight=5;
# ...
}
server {
# ...
location / ( можно дополнить урл и ноде будеи обрабатыватся только с этого урла /rest/*) {
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_set_header X-NginX-Proxy true;
proxy_pass http://app_node;
proxy_redirect off;
}
для PHP FPM все просто.
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}