ভাগ করে নেওয়া হোস্টিংয়ে [বন্ধ] কোনও নোড.জেএস অ্যাপ্লিকেশন কীভাবে হোস্ট করবেন


110

কীভাবে একটি শেয়ার্ড হোস্টিংয়ে নোড.জেএস অ্যাপ্লিকেশন হোস্ট করবেন

আমি শেয়ার্ড হোস্টিংয়ে একটি নোড.জেএস অ্যাপ্লিকেশন হোস্ট করতে চাই। কারও কাছে উল্লেখ করার মতো কোনও রেফারেন্স বা ডকুমেন্টেশন রয়েছে?


এনপিএম বিল্ডটি চালিয়ে আমি যেভাবে এটি আবিষ্কার করেছি তাতে জেএস ফাইল তৈরি হবে যা আপনি সংক্ষিপ্ত করতে পারবেন এবং তারপরে আপনার স্ক্রিপ্ট ট্যাগগুলিতে অন্তর্ভুক্ত করুন। উদাহরণস্বরূপ যখন ভিউজ বা এমনকি কৌণিক 2 ক্লিপ দিয়ে তৈরি করা হয়
জেফ

1
এটি কাজ করেছে - লজ্জা আমি কোনও উত্তর পোস্ট করতে পারি না ... a2hosting.com/kb/installable-applications/manual-installation/…
এডিপারকিনসন

1
@ ড্যান-কর্নিলিস্কু আবার খোলা যেতে পারে। এটা মূল্যবান। সুপারভাইজারে এটি আরও ভাল হবে। এমন একটি উত্তরও পেয়েছি যা আমি যুক্ত করতে চাই।
এডিপারকিনসন

নোড এবং এনপিএম ইনস্টল করা বেশিরভাগ ভাগ্যবান হোস্টগুলিতে ব্যর্থ হবে (CentOS সমর্থিত নয়); এখানে একটি সমাধান (নোড v6.2.2 ব্যবহার করে) হয় - medium.com/@yatko/...
Yatko

উত্তর:


158

আপনি লিনাক্স, অ্যাপাচি এবং পিএইচপি (এলএএমপি) এর সাথে একটি সাধারণ শেয়ার্ড হোস্টিংয়ে নোড.জেএস সার্ভার চালাতে পারেন । এনপিএম, এক্সপ্রেস এবং গ্রান্ট সূক্ষ্মভাবে কাজ করেও আমি এটি সফলভাবে ইনস্টল করেছি। পদক্ষেপগুলো অনুসরণ কর:

1) নিম্নলিখিত কোড সহ সার্ভারে একটি নতুন পিএইচপি ফাইল তৈরি করুন এবং এটি চালান:

<?php
//Download and extract the latest node
exec('curl http://nodejs.org/dist/latest/node-v0.10.33-linux-x86.tar.gz | tar xz');
//Rename the folder for simplicity
exec('mv node-v0.10.33-linux-x86 node');

২) একইভাবে এনপিএম ব্যবহার করে আপনার নোড অ্যাপ্লিকেশন যেমন জেটি-জেএস-নমুনা ইনস্টল করুন:

<?php
exec('node/bin/npm install jt-js-sample');

3) পিএইচপি থেকে নোড অ্যাপ চালান:

<?php
//Choose JS file to run
$file = 'node_modules/jt-js-sample/index.js';
//Spawn node server in the background and return its pid
$pid = exec('PORT=49999 node/bin/node ' . $file . ' >/dev/null 2>&1 & echo $!');
//Wait for node to start up
usleep(500000);
//Connect to node server using cURL
$curl = curl_init('http://127.0.0.1:49999/');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
//Get the full response
$resp = curl_exec($curl);
if($resp === false) {
    //If couldn't connect, try increasing usleep
    echo 'Error: ' . curl_error($curl);
} else {
    //Split response headers and body
    list($head, $body) = explode("\r\n\r\n", $resp, 2);
    $headarr = explode("\n", $head);
    //Print headers
    foreach($headarr as $headval) {
        header($headval);
    }
    //Print body
    echo $body;
}
//Close connection
curl_close($curl);
//Close node server
exec('kill ' . $pid);

ভাল খবর! কটাক্ষপাত আছে পিএইচপি উপর একটি নোড অ্যাপের ডেমো শেয়ার্ড হোস্টিং

সম্পাদনা: আমি গিটহাবে একটি নোড.এফপি প্রকল্প শুরু করেছি ।


2
এবং খুব mongoDB ইনস্টল?
jsky

3
@ জেএসকি এটি মঙ্গোদবকে মূলের প্রয়োজন নেই বলে এটি সম্ভব হওয়া উচিত। কেবল ম্যানুয়াল ইনস্টল গাইড অনুসরণ করুন ।
নিউতেচ

3
এটি চেষ্টা করেননি, তবে দেখতে কেবল সুন্দর দেখাচ্ছে !!! ... চমৎকার কাজ
গ্যাব্রিয়েল রদ্রিগেজ

2
আপনাকে সেই অনুযায়ী ডাউনলোডের URL আপডেট করতে হবে পরামর্শ দিন
জোও পাইমেন্টেল ফেরেরিরা

5
নোড.এফপি খুব ভাল!
হেমন্ত শর্মা

51

একটি এসএসএইচ এর সাথে সংযুক্ত হন এবং একটি ভাগ করা হোস্টিংয়ে নোড ইনস্টল করতে এই নির্দেশাবলী অনুসরণ করুন

সংক্ষেপে আপনি প্রথমে এনভিএম ইনস্টল করুন, তারপরে আপনি এনভিএম দিয়ে আপনার পছন্দের নোড সংস্করণ ইনস্টল করুন।

wget -qO- https://cdn.rawgit.com/creationix/nvm/master/install.sh | bash

আপনার শেলটি পুনরায় চালু করুন (আপনার সেশনগুলি বন্ধ করুন এবং পুনরায় খুলুন)। তাহলে তুমি

nvm install stable

উদাহরণস্বরূপ সর্বশেষতম স্থিতিশীল সংস্করণ ইনস্টল করতে। আপনি আপনার পছন্দের যে কোনও সংস্করণ ইনস্টল করতে পারেন। পরীক্ষা করে দেখুন node --versionনোড সংস্করণ বর্তমানে ব্যবহার করছেন এবং nvm listদেখতে কি আপনি ইনস্টল করেছি।

বোনাসে আপনি খুব সহজেই সংস্করণটি স্যুইচ করতে পারেন ( nvm use <version>)

আপনার যদি এসএসএইচ থাকে তবে পিএইচপি বা যেকোন জটিল কাজের প্রয়োজন নেই।


হাই, উত্তরের জন্য ধন্যবাদ। যদিও, আমি সমস্যায় পড়ছি, এটি বলে যে নোড পাওয়া যায় না, একবার আমি এনভিএম ব্যবহার করে ইনস্টল করি। কোন সাহায্য?
অমিত সাক্সেনা

হতে পারে আপনি চেষ্টা করা উচিত stackoverflow.com/a/33874050/328117 আপনি যে আছে নোড পাওয়া সঙ্গে nvm ত্রুটি
vinyll

বেশিরভাগ ভাগ করা হোস্টিং সরবরাহকারীরা এসএসএইচ অ্যাক্সেস দেয় না। কমপক্ষে আমার নয়।
coder.in.me

4
পুরোপুরি কাজ করেছেন !! ধন্যবাদ
ডেভিন নরগারব

2
@ সায়ামসুল আজরিন যদি আপনি পেয়ে থাকেন তবে nvm:command not foundআপনি এটি চালাতে পারেন: কমান্ডsource ~/.nvm/nvm.sh
হান্স টিওনো

12

আমি নীল.হোস্ট.কম (একটি শেয়ার্ড সার্ভার) এ নোড.জেগুলি ইনস্টল করেছি:

wget <path to download file>
tar -xf <gzip file>
mv <gzip_file_dir> node

এটি টার ফাইলটি ডাউনলোড করবে, একটি ডিরেক্টরিতে এক্সট্র্যাক্ট করবে এবং তারপরে ডিরেক্টরিটিকে সহজেই ব্যবহার করার জন্য ডিরেক্টরিটির নাম 'নোড' রাখবে to

তারপর

./node/bin/npm install jt-js-sample

Returns:
npm WARN engine jt-js-sample@0.2.4: wanted: {"node":"0.10.x"} (current: {"node":"0.12.4","npm":"2.10.1"})
jt-js-sample@0.2.4 node_modules/jt-js-sample
└── express@4.12.4 (merge-descriptors@1.0.0, utils-merge@1.0.0, cookie-signature@1.0.6, methods@1.1.1, cookie@0.1.2, fresh@0.2.4, escape-html@1.0.1, range-parser@1.0.2, finalhandler@0.3.6, content-type@1.0.1, vary@1.0.0, parseurl@1.3.0, serve-static@1.9.3, content-disposition@0.5.0, path-to-regexp@0.1.3, depd@1.0.1, qs@2.4.2, on-finished@2.2.1, debug@2.2.0, etag@1.6.0, proxy-addr@1.0.8, send@0.12.3, type-is@1.6.2, accepts@1.2.7)

আমি এখন কমান্ডগুলি ব্যবহার করতে পারি:

# ~/node/bin/node -v
v0.12.4

# ~/node/bin/npm -v
2.10.1

সুরক্ষার কারণে, আমি আমার নোড ডিরেক্টরিটির নাম পরিবর্তন করে অন্য কিছু করেছি।


1
আমি চেষ্টা npm startমধ্যে jt-js-sampleএবং আমি mysite.com:5000 গিয়েছিলাম কিন্তু এটি পাতা পাওয়া যায় না বলেন। পরিবর্তে আইপি ঠিকানায় যাওয়ার দরকার কি?
zachdyer

যে পোর্ট সম্ভবত অবরুদ্ধ করা হয়েছে, আপনি স্ট্যান্ডার্ড 80 পোর্ট ব্যবহার করা উচিত
RicardoE

n / নোড / বিন / এনপিএম -v আমাকে ত্রুটি দেয়: নটিফায়ারটি = আবশ্যক ('আপডেট-নোটিফায়ার') ({পিকেজি}) সিনট্যাক্স এরির: এক্সপোর্টে অপ্রত্যাশিত শনাক্তকারী। r ._কম্পাইল (মডিউল.জেএস: 432: 25) অবজেক্ট.মডিউল._ এক্সটেনশনস..জেএস (মডিউল.জেএস: 467: 10) এ মডিউল.লোডে (মডিউল.জেএস: 349: 32) ফাংশন.মোডিউল._লোড (মডিউল .js: 305: 12) Function.Module.runMain (মডিউল.js: 490: 10) এ স্টার্টআপে (নোড.জেএস: 123: 16)
নোড.জেজে

10

এ 2 হোস্টিং তাদের ভাগ করা হোস্টিং অ্যাকাউন্টগুলিতে নোড.জেএসকে অনুমতি দেয়। আমি নিশ্চয়তা দিতে পারি যে তাদের সাথে আমার ইতিবাচক অভিজ্ঞতা হয়েছে।

বিপরীত প্রক্সি হিসাবে অ্যাপাচি / লাইটস্পিপি ব্যবহার করে নোড.জেএস ইনস্টল করার জন্য তাদের নলেজবেসে নির্দেশাবলী এখানে রয়েছে: https://www.a2hosting.com/kb/installable-applications/manual-installation/installing-node-js-on-managed- হোস্টিং-অ্যাকাউন্ট । কনফিগারেশন সেট আপ করতে এটি প্রায় 30 মিনিট সময় নেয় এবং এটি এনপিএম, এক্সপ্রেস, মাইএসকিউএল ইত্যাদির সাথে কাজ করবে

A2hosting.com দেখুন।


1
ধন্যবাদ! শুধু আমি যা খুঁজছিলাম।
পেড্রো

প্রায় দু'বছর পরে, এ 2 হোস্টিং এখনও খুব কম হোস্টিং সরবরাহকারীদের মধ্যে একটি হ'ল সরকারীভাবে তাদের ভাগ করা সার্ভারগুলিতে নোড.জেগুলি সমর্থন করে। একটি সাম্প্রতিক
প্রারম্ভিক

1
ভাগ করে নেওয়া নোড জেএস হোস্টিং পরিকল্পনায় রিঅ্যাক্ট এবং ফ্রন্ট এন্ড ভাল চলে? যেকোন ধারণা
সমকিত শাহ

একই সাথে একটি ব্লগ লিখেছিলেন। माध्यम.com
অভিজিৎ এস

2

আপনার এমন হোস্টিং সংস্থার সন্ধান করা উচিত যা এই জাতীয় বৈশিষ্ট্য সরবরাহ করে তবে স্ট্যান্ডার্ড সাধারণ স্ট্যাটিক + পিএইচপি + মাইএসকিউএল হোস্টিং আপনাকে নোড.জেএস ব্যবহার করতে দেয় না

আপনি হয় নোড.জেএস এর জন্য ডিজাইন করা একটি হোস্টিং সন্ধান করতে হবে বা ভার্চুয়াল প্রাইভেট সার্ভার কিনে নিজে নিজে ইনস্টল করতে হবে।


আপনার অর্থ কি ভাগ করা হোস্টিং ব্যবহার করে নোড.জেএস অ্যাপ্লিকেশনটি হোস্ট করা সম্ভব নয়
সোমেশ

3
@ সোমেশ এটি সম্ভব - আমার উত্তর দেখুন।
নিিউটেক

এটি একটি দুর্দান্ত কৌশল, যদিও মনে রাখবেন প্রচুর শেয়ার্ড হোস্টিং সরবরাহকারীরা এই প্রক্রিয়াটি হারাবেন এবং এটিকে একটি ভাগ করা হোস্টিং অ্যাকাউন্টের অপব্যবহার বিবেচনা করবেন ...
টিয়াগো

@niutech যেমন বলেছিলেন তেমন প্রযুক্তিগতভাবে সম্ভব, তবে আমি অবশ্যই এটিকে উত্পাদন নিরাপদ হিসাবে বিবেচনা করব না, অন্যান্য সহকর্মী (একাধিক ব্যবহারকারীর নাম উল্লেখ করতে পারে না) সঠিক, আমি বিশ্বাস করি বেশিরভাগ হোস্টিং সরবরাহকারীরা নোড প্রক্রিয়াটি মেরে ফেলবে বা আপনি প্রসেসরের চক্রের সময় অতিক্রম করবেন believe খুব শীঘ্রই
মারেক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.