Это было полезно. Я перемещаю свой комментарий к ответу, потому что для этого безголового просмотра потребовалось много исследований, и детали могут помочь другим.
Фантомные имена сбивают с толку. Phantom JS не является модулем узла, и вы не можете загрузить его непосредственно из реестра npm. Вы можете загрузить исполняемый двоичный файл с phantomjs.org для установки на свой компьютер для локальной разработки и использовать сборочный пакет, чтобы установить его на Heroku.
Вы можете установить эти две популярные обертки Node для Phantom JS. Они не являются частью основного проекта phantomjs.org, но позволяют запускать эту библиотеку из приложения Node.
- npm phantomjs, на который есть ссылка в вопросе. Этот модуль пытается загрузить стабильную версию исполняемого файла phantomjs в качестве зависимости, поэтому
npm install phantomjs --save
ответил на этот вопрос, потому что двоичный файл хранится в каталоге, который сервер знает для поиска Phantom JS.
- фантом npm
Я решил использовать npm phantom
для своей оболочки Phantom и специальный пакет сборки для установки двоичного файла Phantom JS на Heroku. Мне не нравится наличие Phantom JS 2.0 на Mac с Heroku, работающим под управлением версии 1.9.x. Есть некоторые проблемы, поэтому Linux 2.0 еще не доступен.
Heroku внес несколько незначительных изменений в синтаксис, включая необязательную установку порядка сборок с помощью флага buildpacks:add --index 1
с числовой позицией. Запустите heroku buildpacks
, чтобы узнать, что вы используете и в каком порядке они устанавливаются.
Если у вас только один пакет сборки, используйте :set
, а пакеты сборки должны обслуживаться более https
, поэтому вы не можете просто скопировать и вставить старые примеры Phantom с http
репозиториями.
Официальный пакет сборки Heroku для узлов
heroku buildpacks:set https://github.com/heroku/heroku-buildpack-nodejs
Неофициальный пакет сборки Phantom JS (не модуль npm)
heroku buildpacks:add https://github.com/stomita/heroku-buildpack-phantomjs
person
Dylan Valade
schedule
29.09.2015