У меня возникли трудности с настройкой персонального веб-сайта для правильной работы. Я получаю 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>
Спасибо, что прочитали этот довольно длинный пост !!