nuxtServerInit
routerMiddleware
Вроде даже и примеры на сайте есть...
Но держать нюкст ради рендера вью - имхо неадекватно.
Лучше страничку с json данными внутри скрипта отдать пользователю, а пользователь уже подгрузит и vue и все остальное.
Например: ставишь через vuecli webpack шаблон, делаешь сайт, делаешь build. Далее dist кидаешь в проект с пхп. Внутри index.html рендерите раздел script и в переменную гоните полученные с бд данные. Это хоть и менее деликатный способ, но куда более приятный в плане экономии ресурсов за счёт избавления от рендера nuxt и лишних запросов с того же nuxt к бд.