Home >Backend Development >PHP Tutorial >Feasibility analysis of deploying Nodejs on virtual host nodejs.org nodejs api nodejs installation tutorial

Feasibility analysis of deploying Nodejs on virtual host nodejs.org nodejs api nodejs installation tutorial

WBOY
WBOYOriginal
2016-07-29 08:52:502291browse

Question

A host on Godaddy can host multiple websites (such as PHP websites), so can a Node.js website be used as one of the websites on Godaddy?

Virtual host implementation

To answer this question, we need to first analyze the implementation of virtual host. Take apache as an example.
In the apache server, virtual hosts are supported by apache itself (you can view: https://httpd.apache.org/docs/current/vhosts/). You only need to configure the apache configuration file to host multiple websites. Deployed on the same host.

Can Node.js be deployed on a virtual host at the same time as other websites?

First of all, we need to know that Node.js comes with its own server (this is different from PHP, which is just a CGI script that runs on a server that supports CGI scripts, such as apache, nginx, etc.). So if you want Node.js to run on Godaddy's virtual host, you cannot use Godaddy's virtual host server configuration. Even if Nodejs is installed on the virtual host, specify the new domain name to the nodejs folder in cPanel? But the code will not run, because this method is also the way the host server runs CGI scripts, and Node.js is not a CGI script and comes with its own server, so it obviously cannot be run by the host server. Therefore, it is not feasible to deploy Node.js to a virtual host in a simple and direct way.

Unorthodox way of deploying Node.js on a virtual host

What if you have to deploy Node.js on a virtual host? There are methods, but they are unorthodox and it is best not to use them.
Method 1:
Use CGI-Node. CGI-Node can run as a CGI script like PHP. There are already tutorials on the configuration on Godaddy, but it does not meet our needs. It is actually a simulation of PHP coding method. Using the server that comes with Node.js means that the express framework may not be available. This method of changing the encoding method is obviously not suitable for our situation.
Method 2:
Use a server proxy. The apache server itself supports the proxy function, which can send a specific request link to another link for processing, and then return the processing result (reference: http://stackoverflow.com/questions/9831594/apache-and-node-js- on-the-same-server). At this time, we only need to run node.js on the virtual host under http://localhost:3000, and then configure apache to proxy all links starting with http://www.example.com/node localhost:3000, in this way, we can indirectly deploy node.js on the virtual host. But the question is, how do we configure the apache configuration file of the virtual host? Obviously this is difficult to do.

Generally speaking, method two is better than method one, but neither is feasible.

Conclusion

If you want to deploy Node.js on a virtual host alone, the method is actually the same as ours locally (of course, if our virtual host is a more advanced one, you can log in to the operating system interface or SSH virtual host). But if you want to deploy it on the same computer at the same time as other websites, such as PHP, if you can modify the server configuration file, you can refer to the previous method two. If you can't, then there is almost no good method. .

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

The above introduces the feasibility analysis of deploying Nodejs on a virtual host, including NodeJS and feasibility analysis. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn