У меня есть проект узла, который использует библиотеку bcrypt. Когда я развертываю его в Azure (он отлично работает на моем локальном компьютере, и на моем компьютере, и на сервере Azure работает Node 10.7.0), я получаю HTTP-ошибку 500 обратно для каждого запроса. Когда я проверил журналы приложений, чтобы увидеть, что происходит, это было полное сообщение об ошибке, которое я получил (минус трассировка стека):
Application has thrown an uncaught exception and is terminated:
Error: The module '\\?\D:\home\site\wwwroot\node_modules\bcrypt\lib\binding\bcrypt_lib.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 57. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
Я пробовал следующие вещи безуспешно:
- Использование узла 8 вместо обеих машин
- Запуск
npm rebuild
на консоли отладки Kudu
- Пропустив
node_modules
из моего .gitignore и переместив каталог узловых модулей моей машины прямо в лазурное (да, я отчаялся)
Как я могу решить эту проблему?