ホームページ  >  記事  >  バックエンド開発  >  仮想ホストへの Nodejs のデプロイの実現可能性分析

仮想ホストへの Nodejs のデプロイの実現可能性分析

WBOY
WBOYオリジナル
2016-07-29 08:52:502287ブラウズ

質問

Godaddy 上の 1 つのホストは複数の Web サイト (PHP Web サイトなど) をホストできますが、Node.js Web サイトを Godaddy 上の Web サイトの 1 つとして使用できますか?

仮想ホストの実装

この質問に答えるには、まず仮想ホストの実装を分析する必要があります。 apacheを例に挙げます。
Apache サーバーでは、仮想ホストは Apache 自体によってサポートされています (https://httpd.apache.org/docs/current/vhosts/ で確認できます)。複数の Web サイトをホストするように Apache 構成ファイルを構成するだけです。同じホスト上にデプロイされます。

Node.js は他の Web サイトと同時に仮想ホストにデプロイできますか?

まず第一に、Node.js には独自のサーバーが付属していることを知っておく必要があります (これは、Apache、nginx などの CGI スクリプトをサポートするサーバー上で実行される単なる CGI スクリプトである PHP とは異なります)。 )。したがって、Node.js を Godaddy の仮想ホスト上で実行したい場合は、Godaddy の仮想ホスト サーバー構成を使用することはできません。仮想ホストにNodejsがインストールされている場合でも、cPanelのnodejsフォルダーに新しいドメイン名を指定しますか?ただし、このメソッドはホスト サーバーが CGI スクリプトを実行する方法でもあるため、コードは実行されません。また、Node.js は CGI スクリプトではなく、独自のサーバーが付属しているため、明らかにホスト サーバーでは実行できません。したがって、単純かつ直接的な方法で Node.js を仮想ホストにデプロイすることは現実的ではありません。

仮想ホストに Node.js をデプロイする型破りな方法

仮想ホストに Node.js をデプロイする必要がある場合はどうすればよいですか?方法はありますが、型破りなので使用しないほうがよいでしょう。
方法 1:
CGI-Node を使用します。 CGI-Node は PHP と同様に CGI スクリプトとして実行できます。Godaddy にはすでに設定に関するチュートリアルがありますが、実際には PHP を使用したコーディング方法のシミュレーションです。 Node.js が付属しているということは、Express フレームワークが利用できない可能性があることを意味します。エンコード方法を変更するこの方法は、明らかに私たちの状況には適していません。
方法 2:
サーバープロキシを使用します。 Apache サーバー自体はプロキシ機能をサポートしており、特定のリクエスト リンクを別のリンクに送信して処理し、処理結果を返すことができます (参考: http://stackoverflow.com/questions/9831594/apache-and-node-js) - 同じサーバー上)。現時点では、仮想ホスト上でnode.jsを実行するだけで済みます。この方法で、仮想ホスト上に間接的にnode.jsをデプロイできます。しかし問題は、仮想ホストの Apache 構成ファイルをどのように構成するかということです。明らかにこれを行うのは困難です。 http://localhost:3000下,然后在apache里配置把http://www.example.com/node开头的链接全部代理给localhost:3000

一般的に言えば、方法 2 は方法 1 よりも優れていますが、どちらも実行可能ではありません。

結論

仮想ホストのみに Node.js をデプロイする場合、その方法は実際にはローカルでの方法と同じです (もちろん、仮想ホストがより高度なものであれば、オペレーティング システムにログインできます)インターフェイスまたは SSH 仮想ホスト)。ただし、PHP などの他の Web サイトと同時に同じコンピューターに展開する場合は、サーバー構成ファイルを変更できる場合は、前の 2 つの方法を参照できます。それができない場合は、次の方法があります。ほとんど良い方法はありません。

')​​.addClass('事前番号付け').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 上記では、NodeJS と実現可能性分析を含む、仮想ホスト上に Nodejs をデプロイする実現可能性分析について紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。