我已经在VPS(ubuntu 10.04)上部署了我的nodejs应用程序。我已经将其托管在一个子域(subdomain.myapp.com:3000)上,并且我只有一个IP地址
默认情况下,Apache默认使用端口80。我只希望我的应用程序可以在端口3000上运行,但URL应该是(subdomain.myapp.com)
是否可以在nodejs中实现,还是必须调整虚拟主机或apache的文件。
是的,有可能
在您的apache虚拟主机文件中,配置以下内容
<VirtualHost *:80> ServerName subdomain.myapp.com ProxyRequests off <Proxy *> Order allow,deny Allow from all </Proxy> ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ ProxyPreserveHost on </VirtualHost>
你应该有
NameVirtualHost *:80
在文件之上,还为apache安装了代理模块(我认为这是ubuntu的默认配置)
LoadModule proxy_module lib/httpd/modules/mod_proxy.so
它必须在您的httpd.conf文件中
那么您应该重新启动apache,它一定可以!