Рейтинг:0

Развертывание приложения react js путем настройки обратного прокси

флаг dk

У меня есть приложение для реагирования js, работающее на локальный: 3000 на моем vps (godaddy).

Я настроил обратный прокси-сервер с помощью веб-сервера Apache на /var/www/html/электронная торговля/приложение установив .htaccess как это:

DirectoryIndex отключен

RewriteEngine включен 
Правило перезаписи ^(.*)$ http://127.0.0.1:3000/$1 [P,L] 
Правило перезаписи ^$ http://127.0.0.1:3000 [P,L] 

Идея состоит в том, чтобы получить доступ к приложению через http://my-vps-public-ip/ecommerce/app.

Сейчас страница не загружается. Любая помощь будет оценена по достоинству.

Чтобы проверить, действительно ли приложение работает на http://локальный: 3000 Я сделал SSH-туннель:

ssh -L 3000:$GD_IP:3000 -N логан@$GD_IP

И когда я смотрю на это с конца http://локальный: 3000, это сработало! Значит, что-то не так с моей конфигурацией Apache? Я сделал аналогичный обратный прокси с портом 8000, и это сработало.

Этот работал в другом случае:

DirectoryIndex отключен

RewriteEngine включен 
Правило перезаписи ^(.*)$ http://127.0.0.1:8000/api/$1 [P,L] 
Правило перезаписи ^$ http://127.0.0.1:8000/api [P, L] 

Под «работал» я имею в виду, скажем, .htaccess файл находится в /var/www/html/ecommerce/api, тогда я могу получить к нему доступ через http://my-vps-public-ip/ecommerce/api.

Когда я посетил http://$GD_IP:3000 сайт открывается! Но почему? .htaccess файл находится под /var/www/html/электронная торговля/приложение поэтому я думал, что он будет доступен через http://$GD_IP/электронная торговля/приложение?

Вывод SS команда:

logan@vps:~$ ss -ltn 'sport = :8000'
Состояние Recv-Q Send-Q Локальный адрес: порт Одноранговый адрес: процесс порта    
ПРОСЛУШАТЬ 0 511 *:8000 *:* 

logan@vps:~$ ss -ltn 'sport = :3000'
Состояние Recv-Q Send-Q Локальный адрес: порт Одноранговый адрес: процесс порта    
СЛУШАТЬ 0 511 0.0.0.0:3000 0.0.0.0:*

Вывод апачектл -S:

logan@vps:~$ apachectl -S
AH00558: apache2: не удалось надежно определить полное доменное имя сервера, используя ip-184-168-120-55.ip.secureserver.net. Установите директиву 'ServerName' глобально, чтобы подавить это сообщение.
Конфигурация виртуального хоста:
*:80 ip-184-168-120-55.ip.secureserver.net (/etc/apache2/sites-enabled/000-default.conf:1)
Корневой сервер: "/etc/apache2"
Основной корневой документ: "/var/www/html"
Основной журнал ошибок: "/var/log/apache2/error.log"
Прокси-сервер Mutex: using_defaults
Мьютекс по умолчанию: dir="/var/run/apache2/" механизм=по умолчанию 
Обратный вызов сторожевого таймера Mutex: using_defaults
Карта перезаписи мьютекса: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Определить: DUMP_VHOSTS
Определить: DUMP_RUN_CFG
Пользователь: name="www-data" id=33 not_used
Группа: name="www-data" id=33 not_used
флаг cn
Модуль Apache «proxy» может быть полезен, особенно директивы «ProxyPass» и «ProxyPassReverse». См., например, [этот ответ на аналогичный вопрос] (https://askubuntu.com/questions/1342447/how-do-i-setup-a-subdomain-in-apache2-on-ubuntu-20-04/1342457# 1342457).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.