我有一个运行大量Web应用程序的CentOS盒子,并且我使用Apache来代理对各种应用程序的请求。所有这些都只是一个Erlang施氮,我似乎无法得到工作的工作。使用Apache mod-proxy与Erlang氮气
我正在以标准方式运行Nitrogen应用程序,并且可以在机器上本地访问http://localhost:8000。我已经使用wget验证了这一点。
这里是我尝试使用Apache配置文件:
ProxyRequests Off
ProxyPreserveHost On
<Proxy http://my-ip:8000/*>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /erlang http://my-ip:8000/
ProxyPassReverse /erlang http://my-ip:8000/
ProxyPassReverse /erlang http://my-ip/
这种设置类似,但其他应用程序不部署到根目录下的系统上的所有其他成功合作代理其像Nitrogen这样的服务器似乎在做。
结果是,基本页面正确地下载到网络浏览器,但所有的伴随资源都没有。这给了我一个非风格的页面,其中的JavaScript无法正常工作。
这里是Apache日志:
x.x.x.x - - [timestamp] "GET /erlang HTTP/1.1" 200 2884
x.x.x.x - - [timestamp] "GET /nitrogen/jquery.js HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/jquery-ui.js HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/livevalidation.js HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/nitrogen.js HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/bert.js HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/jquery-ui/jquery.ui.all.css HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /nitrogen/nitrogen.css HTTP/1.1" 404 484
x.x.x.x - - [timestamp] "GET /css/style.css HTTP/1.1" 404 484
我必须使用Apache作为我的代理人硬性要求 - 我不打算重新建立所有其他应用程序只是为了得到这个施氮工作。在防火墙中打开8000端口也不成问题。
只要不影响其他应用程序,我可以使用任何Apache模块(mod-rewrite等)或任何Apache设置。我还可以更改施氮任何设置即可得到它与Apache发挥更好。
我怎样才能使用Apache代理/反向代理我的氮应用程序?