2016-08-19 8 views
0

私はNode.jsプログラムspawn PHP組み込みサーバを持っています。Node.jsから生成されたPHPサーバに到達できません:ECONNREFUSED

SuperAgentモジュールを使用してNode.jsプログラムからPHPサーバーにアクセスします。

いつも、ECONNREFUSEDエラーが発生します.FTPサーバーに到達できません。しかし、(同じポートを使って)PHPサーバを手動で起動すると、Node.jsプログラムはそれにアクセスできます。

なぜNode.jsプロセスから生成されたPHPサーバに到達できないのですか? Node.jsのを使用して、私は、Windows 10上だなど、trueoptions.detachedを設定ignoreoptions.stdioを設定し、PHPサーバーを起動するには十分な時間があることを確認するためにsetTimeoutを使用

を:私が働いていた何もなく、すべてを試してみました6.4.0。 使用されるコードはここにあります:https://github.com/aquafadas-com/gulp-php-minify/blob/master/lib/minifier.js

+0

99%は、それが何をすべきか、ユーザー、ユーザーのことです手作業で起動し、ノードで何を使うの?私の経験から、ノードを実行すると管理者ではない場合はWindows上でシンボリックリンクを作成できないため、symlinksを使用するノードモジュールは – vitr

+0

ですしかし、あなたは何のために組み込みサーバーを使用していますか?開発のためだけに意図され、単一の(ブロッキング)スレッドで実行されます。 – Steve

+0

@Steveこのプログラムは、PHPコードを縮小するGulp.jsプラグインです。だから、私は完全なWebサーバではなく、一時的なPHPサーバが必要です(通常、その存続期間は1分を超えません)。 – CedX

答えて

0

それは最終的に私のコードのバグでした:(

私は手動でPHPサーバーを立ち上げたとき、私は「/ウェブ」ディレクトリを務めしかし、生成されたプロセスを検査するとき。 、私は「/ libに/ウェブ」ディレクトリが務めた(このフォルダが存在しない)ことがわかりました。path.join(__dirname, '../web')による声明path.join(__dirname, 'web')を交換

は、問題を解決した。

関連する問題