Ошибка 502 при попытке вывести мой сайт в интернет - PullRequest
0 голосов
/ 02 ноября 2018

У меня возникли трудности с настройкой персонального веб-сайта для правильной работы. Я получаю 502 ошибки и не знаю, как их исправить.

Failed to load resource: the server responded with a status of 502 (Proxy Error)

У меня есть два домена, которые я приобрел у Google Domains, а также мой собственный веб-сервер, построенный на Raspberry Pi. На самом деле, у меня есть 3 Raspberry Pi's. RP-Main действует как обратный прокси-сервер, использующий Apache для маршрутизации запросов для домена A к RP-0 и домена B к RP-1. Raspberry Pi используют LAMP для обслуживания веб-сайтов.

Веб-сайт для RP-0 состоит из одного файла, index.php, который показывает дату и время.

Веб-сайт для RP-1 является веб-сайтом приложения Node.Js / Express, и у меня возникла проблема.

Я создал веб-сайт на виртуальной машине Ubuntu 16.04, используя Virtual Box. Это действует как мой сервер разработки. Я завершил работу над сайтом несколько дней назад с намерением перенести его на мой производственный сервер, вышеупомянутый RP-1.

На данный момент я не использую какие-либо операции переноса или комплектации, мой план состоит в том, чтобы получить работающее приложение, а затем добавить эти функции позже. Кроме того, я планирую использовать NPM PM2 для поддержания работоспособности моего сайта. Поэтому я скопировал все файлы с сервера разработки на производственный сервер и запустил веб-сайт, используя npm start, как на своем сервере разработки.

Теперь на моем главном компьютере, когда я захожу на свой домен, веб-сайт загружается, но, похоже, он обслуживает только некоторые статические файлы. Например, у меня в папке public/img есть изображение, которое действительно появляется. Тем не менее, файлы CSS не загружаются, и они находятся в public / css. Кроме того, похоже, что JQuery тоже не работает.

При устранении неполадок, связанных с этой проблемой, инструменты Chrome отображают 502 ошибки, однако, когда я смотрю на фактическую ошибку, путь к статическим файлам правильный.

Я прочитал несколько статей, предполагающих, что проблема может быть в кешировании. На базовом уровне я знаю, что такое кэширование, но не знаю, как реализовать его для моего веб-сайта.

Если есть люди, которые успешно реализовали то, что я пытаюсь сделать, я был бы признателен за любые знания или советы, которые вы можете иметь.

Вот мои файлы default.conf:

RP Main: внутренний IP-адрес - 192.168.1.105 - это главный обратный прокси-сервер RPi

<VirtualHost *:80>
    ServerName              www.abc.net
    ServerAlias             www.abc.net
    ProxyPreserveHost       on
    ProxyPass               / http://192.168.1.104
    ProxyPassReverse        / http://192.168.1.104
</VirtualHost>

RP - 1: внутренний IP-адрес - 192.168.1.104 - на этом RPi запущено приложение Node.js / Express, http://localhost:3000

<VirtualHost *:80>
    ServerName            www.abc.net
    ServerAlias           www.abc.net
    ProxyPreserveHost     on
    ProxyPass             / http://localhost:3000
    ProxyPassReverse      / http://localhost:3000
</VirtualHost>

Спасибо, что прочитали этот довольно длинный пост !!

...