我在使个人网站正常运行方面遇到一些困难。我收到502个错误,不确定如何纠正。
Failed to load resource: the server responded with a status of 502 (Proxy Error)
我有两个从Google Domains购买的域,以及我自己的基于Raspberry Pi构建的Web服务器。实际上,我有3个Raspberry Pi。 RP-Main充当反向代理服务器,使用Apache将对域A的请求路由到RP-0,将对域B的请求路由到RP-1。 Raspberry Pi正在使用LAMP堆栈为网站提供服务。
RP-0的网站仅包含一个文件index.php
,其中显示了日期和时间。
RP-1的网站是Node.Js / Express应用程序网站,这是我遇到的问题。
我使用Virtual Box在Ubuntu 16.04虚拟机上创建了网站。这是我的开发服务器。我几天前完成了该网站,目的是将其转移到我的生产服务器,即上述的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在http://localhost:3000上运行Node.js / Express应用
<VirtualHost *:80>
ServerName www.abc.net
ServerAlias www.abc.net
ProxyPreserveHost on
ProxyPass / http://localhost:3000
ProxyPassReverse / http://localhost:3000
</VirtualHost>
谢谢您阅读这篇冗长的文章!