我写了一个等待坐在服务器上的Node JS服务器。在理想的世界中,我想创建一个指向节点服务器的子域。我见过一些文章,允许您通过v-host Apache代理转发到特定端口/端口上的节点服务器。
示例:
<VirtualHost 109.74.199.47:80>
ServerAdmin davy.brion@thatextramile.be
ServerName thatextramile.be
ServerAlias www.thatextramile.be
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
</Location>
http://thatextramile.be/blog/2012/01/hosting-a-node-js-site-through-apache/
然而人们建议,这不是最好的方法,因为Apache的进程将阻塞,直到节点响应。此外,它似乎与ajax请求有问题。
有没有另一种方法可以在不使用Apache的情况下将sum-domain指向Node JS?如果Node位于端口x和端口80和443上的Apache,会导致问题吗?他们会发生冲突吗?
答案 0 :(得分:2)
试试这个
1.-创建子域目录并将其添加到您的plesk子域rootdir。
2.-把你的东西放在那里
3.-选择并更改NODE.js端口(在您的env变量中(在/ server / config中)并在Parallels plesk中的防火墙访问规则中打开它
4.-转到parallels plesk中的子域并输入Web服务器配置
5.-在http的aditional指令中,输入:
RewriteEngine on
RewriteCond %{SERVER_NAME} yoursub.domain.com
RewriteCond %{SERVER_PORT} !8750 <-- CHOOSE YOUR PORT NUMBER AND CHANGE
RewriteRule ^/(.*) http://yoursub.domain.com:8750/$1 [P,R]
RewriteCond %{SERVER_PORT} 8750 <-- CHOOSE YOUR PORT NUMBER AND CHANGE
RewriteRule ^/(.*) http://yoursub.domain.com:8750/$1 [P,L] <-- CHOOSE YOUR PORT NUMBER AND CHANGE
然后重启apache。并尝试:)希望它有所帮助,不会遗漏任何东西
编辑关于node.js之前apache是否有任何问题的答案。 - &GT;不适合我。 Apache和node.js一起运行很好。至少对于我来说。