🌐 Как настроить Apache в качестве внешнего прокси-сервера для Node.js |

🌐 Как настроить Apache в качестве внешнего прокси-сервера для Node.js

Мануал
Apache – самый популярный веб-сервер.
Вы также можете использовать Apache в качестве внешнего прокси-сервера для внутренних приложений, таких как Node.js.
Это руководство поможет вам настроить сервер Apache в качестве внешнего прокси-сервера для вашего приложения Node.js с помощью простых шагов.

Требования

Мы предполагаем, что в вашей системе уже установлен Node.js.

Если все таки еще нет, посмотрите эти руководства:

Шаг 1 – Создание примера приложения

Поскольку вы здесь 🙂 у вас должно быть запущенное приложение Node.js на каком-то порту.

Мы предполагаем, что вы запускаете свое приложение на порту 3000.

Для демонстрации я создам пример веб-приложения на Node.js и запущу на порту 3000.

Так чтобы вам было легче понять.

vi myapp.js

Затем добавьте следующее содержимое в файл javascript.

var http = require('http');

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World');
}).listen(3000, "127.0.0.1");
console.log('Server running at http://127.0.0.1:3000/');
Ваше приложение Node готово к работе через порт 3000. Давайте запустим приложение Node.js в фоновом режиме.
node myapp.js &
И получим доступ к этому приложению в браузере.

 Шаг 2 – Установим сервер Apache

sudo apt install apache2   ### Debians системы
sudo yum install httpd   ### CentOS 7/6    
sudo dnf install httpd   ### Fedora & CentOS 8 
После установки веб-сервера Apache у вас должен быть включен модуль Proxy.
Этот модуль включен в Apache для пользователей, которые установили с использованием пакетов rpm.
Если вы его не включили, измените конфигурацию Apache /etc/httpd/conf/httpd.conf или для Apache 2.4 /etc/httpd/conf.modules.d/00-proxy.conf и раскомментируйте следующие строки или поместите их в файл.
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
Для систем на основе Debian используйте следующую команду для включения модуля Proxy с Apache.

sudo a2enmod proxy proxy_http

Шаг 3 – Настройте Apache VirtualHost

Создайте файл конфигурации виртуального хоста для своего домена

### Системы на основе Debian 
sudo vim /etc/apache2/sites-enabled/example.com.conf

### Системы на основе Redhat 
sudo vim /etc/httpd/conf.d/example.com.conf
и добавьте следующий контент.

2
3
4
5
6
7
<VirtualHost *:80>
ServerName example.com
ProxyRequests On
ProxyPass / http://localhost:3000
ProxyPassReverse / http://localhost:3000
</VirtualHost>
После создания конфигурации перезапустите веб-сервер Apache, используя следующую команду.

Шаг 5 – Проверьте настройку

Теперь зайдите на ваш сервер, используя доменное имя, вы увидите те же страницы, что и на http://127.0.0.1:3000/.

Заключение

Вы выполнили настройку прокси-сервера Apache для создания приложения Node.js.

В качестве альтернативы, Nginx имеет лучшую производительность в качестве прокси-сервера, поэтому, если вы не ограничены Apache, используйте прокси-сервер Nginx:

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий