我在www.example.com有一个服务器运行一个由Apache提供的PHP制作的网页,这个页面正在监听端口80。
现在我想在域名www.example2.com上服务我的Node.JS。两个页面都应该在同一个服务器上,Node.JS应用程序应该运行在端口3000上。我怎样才能做到这一点?
从其他答案和博客文章(比如这个:http://garr.me/blog/running-node-js-and-apache-together-using-mod_代理/)中,我了解到我可以创建一个ReverseProxy来将www.example.com/app重定向到我的应用程序,但是这不是我想要的行为。我想要的是这个新的域名www.example2.com将服务器的ip地址转到3000端口。
附带问题:这个问题听起来可能很愚蠢,但是,我不能将整个域重定向到3000端口的服务器IP地址吗?
谢谢。
发布于 2014-12-24 07:08:55
我解决了。最初问题上的那一页给出了一个很好的建议,但它似乎不完整。要实现此配置,请执行以下操作:
-Locate文件httpd.conf在您的Apache文件夹(通常在apache2/conf上)。
将以下行-Add到末尾:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerName example2.com
ServerAlias www.example2.com
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>-Change实际域名的占位符"example2“(example2是原始问题上的域名)
-Restart apache.
请注意,您可能希望通过将LoadModule行移到实际加载模块的位置来整理代码。
发布于 2014-12-24 07:05:52
现在我想在域名www.example2.com上服务我的Node.JS。两个页面都应该在同一个服务器上,Node.JS应用程序应该运行在端口3000上。我怎样才能做到这一点?
有两个步骤。
我不能将整个域重定向到3000端口的服务器IP地址,从GoDaddy/Route53 53的域名配置吗?
不是的。您不熟悉各种网络层,包括DNS、TCP、IP和两者之间的位置。我可以建议读一本小书,不讲主题。两次。,它会使你得到好的帮助吗?=)
https://serverfault.com/questions/654540
复制相似问题