Некоторое время назад занимался настройкой системы личных сообщений на сайте. Настроил модуль сообщений, но для того, чтобы они получались и отправлялись в режиме реального времени нужно было установить NodeJS.
Палю инструкцию по установке NodeJS на сервер и сайт Drupal 8.
Первый способ: Установка NodeJS на сервер.
=========Install NodeJS on Server=========
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
=========Install NodeJS for Drupal=========
cd /usr/lib/node_modules
npm install drupal-node.js
cd /usr/lib/node_modules/drupal-node.js
npm install
==========Create nodejs.config.js==========
cp nodejs.config.js.example nodejs.config.js
===========Edit nodejs.config.js===========
nano nodejs.config.js
При необходимости правим конфиг js. Рабочий конфиг:
settings = {
scheme: 'https',
port: 4433,
host: 'tokalok.net',
resource: '/socket.io',
serviceKey: 'GXZAYZ',
backend: {
port: 443,
host: 'tokalok.net',
scheme: 'https',
basePath: '',
messagePath: 'nodejs/message'
},
debug: false,
sslKeyPath: '/etc/letsencrypt/live/www.tokalok.net/privkey.pem',
sslCertPath: '/etc/letsencrypt/live/www.tokalok.net/fullchain.pem',
sslCAPath: '',
baseAuthPath: '/nodejs/',
extensions: [],
clientsCanWriteToChannels: true,
clientsCanWriteToClients: true,
transports: ['websocket', 'flashsocket', 'htmlfile', 'xhr-polling', 'polling', 'json-polling'],
jsMinification: true,
jsEtag: true,
logLevel: 1
};
=============Start NodeJS==============
cd /usr/lib/node_modules/drupal-node.js
node app.js
or
DEBUG=* node app.js
Первый способ: Установка NodeJS на сайт в директорию Drupal.
=======Install NodeJS on Drupal site========
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
=========Install NodeJS for Drupal=========
cd /var/www/tokalok/public_html
npm install drupal-node.js
cd /var/www/tokalok/public_html/drupal-node.js
npm install
==========Create nodejs.config.js==========
cp nodejs.config.js.example nodejs.config.js
===========Edit nodejs.config.js===========
nano nodejs.config.js
При необходимости правим конфиг js. Рабочий конфиг:
settings = {
scheme: 'https',
port: 4433,
host: 'tokalok.net',
resource: '/socket.io',
serviceKey: 'GXZAYZ',
backend: {
port: 443,
host: 'tokalok.net',
scheme: 'https',
basePath: '',
messagePath: 'nodejs/message'
},
debug: false,
sslKeyPath: '/etc/letsencrypt/live/www.tokalok.net/privkey.pem',
sslCertPath: '/etc/letsencrypt/live/www.tokalok.net/fullchain.pem',
sslCAPath: '',
baseAuthPath: '/nodejs/',
extensions: [],
clientsCanWriteToChannels: true,
clientsCanWriteToClients: true,
transports: ['websocket', 'flashsocket', 'htmlfile', 'xhr-polling', 'polling', 'json-polling'],
jsMinification: true,
jsEtag: true,
logLevel: 1
};
=============Start NodeJS==============
cd /var/www/tokalok/public_html/node_modules/drupal-node.js
node app.js
or
DEBUG=* node app.js
На этом все! Устанавливайте. Внедряйте. Пишите вопросы и пожелания в комментариях.