آموزش نصب و اجرای برنامه Node.js در cPanel

این مقاله نحوه نصب، تست، ثبت و اجرای برنامه‌های Node.js در cPanel را توضیح می‌دهد. شامل پیش‌نیازهای EasyApache 4، ساخت فایل app.js، اجرای برنامه، ثبت در Application Manager، ری‌استارت برنامه، ساخت فایل startup سفارشی و عیب‌یابی است.

Node.jsPassenger Node.jsNode.js cPanel

~3 دقیقه مطالعه · آخرین به‌روزرسانی ۲ اسفند ۱۴۰۴

1. مقدمه


هشدار: cPanel توسعه‌دهنده Node.js نیست و پشتیبانی فنی ارائه نمی‌دهد. انجام این مراحل فقط برای مدیران سیستم حرفه‌ای توصیه می‌شود. مسئولیت هرگونه از دست رفتن داده با شماست.


این راهنما نحوه نصب یک برنامه Node.js را توضیح می‌دهد. Node.js یک محیط اجرای جاوااسکریپت برای ساخت برنامه‌های مقیاس‌پذیر است.


می‌توانید مراحل را از طریق SSH یا رابط Terminal در cPanel انجام دهید.


در این مقاله، nodejsapp نام برنامه و 3000 شماره پورت است.


2. پیش‌نیازهای نصب


قبل از شروع، ارائه‌دهنده هاست باید بسته‌های EasyApache 4 مناسب را نصب کرده باشد.


2.1 بسته‌های موردنیاز برای AlmaLinux 8 / Rocky Linux 8


  • ea-ruby27-mod_passenger
  • ea-apache24-mod_env

و یکی از نسخه‌های Node.js:


  • ea-nodejs16
  • ea-nodejs18
  • ea-nodejs20
  • ea-nodejs22

2.2 بسته‌های موردنیاز برای AlmaLinux 9 / Rocky Linux 9


  • ea-apache24-mod-passenger
  • ea-apache24-mod_env

2.3 بسته‌های موردنیاز برای CentOS 7


  • ea-ruby27-mod_passenger
  • ea-apache24-mod_env
  • ea-nodejs16

نکته: این راهنما برای Ubuntu کاربرد ندارد.




3. نصب برنامه Node.js


3.1 ساخت مسیر برنامه


به‌عنوان کاربر cPanel وارد شوید و مسیر برنامه را ایجاد کنید:


mkdir nodejsapp

سپس وارد مسیر شوید.


3.2 ساخت فایل app.js


نکته مهم: Passenger به‌صورت پیش‌فرض به دنبال فایل app.js می‌گردد. اگر نام دیگری انتخاب کنید، باید آن را در Apache تعریف کنید.


نمونه فایل:


const http = require('http')
const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World! NodeJS \n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});



4. تست برنامه


برای اجرای برنامه:


/opt/cpanel/ea-nodejs20/bin/node app.js

خروجی مشابه زیر خواهد بود:


Server running at http://127.0.0.1:3000


در یک ترمینال دیگر:


curl http://127.0.0.1:3000

خروجی:


Hello World! NodeJS


برای توقف برنامه:


ps aux | grep app.js
kill -9 PIDNUMBER



5. ثبت برنامه در cPanel


از مسیر زیر استفاده کنید:


cPanel » Home » Software » Application Manager


پس از ثبت، برنامه از طریق URL زیر قابل دسترسی است:


http://example.com/nodejsapp




6. ری‌استارت برنامه


برای اعمال تغییرات، فایل زیر را ایجاد کنید:


nodejsapp/tmp/restart.txt

هر بار تغییر، باید این فایل را دوباره touch کنید.




7. ساخت فایل Startup سفارشی


اگر نام فایل شروع برنامه app.js نیست، باید آن را در Apache تعریف کنید.


فایل زیر را ایجاد کنید:


/etc/apache2/conf.d/userdata/ssl/2_4/user/domain.nodejs.conf


نمونه محتوا:


DocumentRoot /user/example.com/public
PassengerStartupFile index.js
PassengerAppType node
PassengerAppRoot /nodejsapp/example.com

سپس:


/usr/local/cpanel/scripts/rebuildhttpdconf
/usr/local/cpanel/scripts/restartsrv_httpd



8. عیب‌یابی برنامه


لاگ‌ها در مسیر زیر قرار دارند:


/home/user/nodejsapp/logs


برای مشکلات پورت، از مستندات Passenger استفاده کنید.




نتیجه‌گیری


این راهنما تمامی مراحل نصب، تست، ثبت، اجرای مجدد و عیب‌یابی برنامه‌های Node.js در cPanel را پوشش می‌دهد. با رعایت این مراحل می‌توانید برنامه‌های Node.js را به‌صورت ایمن و پایدار روی سرور خود اجرا کنید.


نوشته و پژوهش‌شده توسط دکتر شاهین صیامی

مقالات مرتبط

راهنمای کامل بازیابی اکانت cPanel و انتقال حساب‌ها و تنظیمات برای مدیران سیستم تازه‌کار

این مقاله یک راهنمای جامع برای مدیران سیستم تازه‌کار است که می‌خواهند اکانت‌های cPanel را بازیابی کنند، حساب‌ها و تنظیمات را بین سرورها منتقل کنند، و از ابزارهای تشخیصی برای بررسی مشکلات انتقال و بازیابی استفاده کنند. این راهنما شامل نحوه استفاده از WHM، نحوه آپلود بکاپ‌ها، روش‌های انتقال، و فعال‌سازی لاگ‌های پیشرفته است.

ادامه

How to Move All cPanel Accounts from One Server to Another

This guide explains how to migrate all cPanel accounts, service configurations, SSL certificates, and the main server IP address from an old source server to a new target server. It covers installation requirements, configuration transfers, account migration, IP reassignment, DNS adjustments, and SSL restoration.

ادامه

آموزش کامل مهاجرت یک وب‌سایت وردپرس از macOS به سرور cPanel & WHM

این مقاله نحوه انتقال یک وب‌سایت وردپرس که روی macOS میزبانی شده است را به یک سرور cPanel & WHM توضیح می‌دهد. شامل خروجی گرفتن از دیتابیس، آپلود فایل‌ها، ایجاد دیتابیس جدید، تنظیم wp-config.php، تغییر URL سایت، و رفع لینک‌ها و تصاویر خراب است.

ادامه

آموزش کامل انتقال دستی یک اکانت بین سرورها در cPanel & WHM

این مقاله نحوه انتقال دستی یک اکانت بین دو سرور را زمانی که حجم اکانت برای ابزارهای انتقال WHM بسیار بزرگ است توضیح می‌دهد. شامل ایجاد دایرکتوری موقت، فشرده‌سازی public_html و لاگ‌ها، انتقال امن با scp، و بازیابی فایل‌ها در سرور جدید است.

ادامه

آموزش کامل مهاجرت دستی داده‌های Horde به Roundcube در cPanel & WHM

این مقاله نحوه مهاجرت دستی تقویم‌ها و مخاطبین Horde به Roundcube را در نسخه‌های 108 تا 118 cPanel & WHM توضیح می‌دهد. شامل مراحل خروجی گرفتن از Horde، انتقال فایل‌ها به مسیرهای صحیح، و وارد کردن داده‌ها در Roundcube با استفاده از افزونه‌های داخلی یا ابزارهای واردسازی است.

ادامه

آموزش کامل مهاجرت دستی اکانت‌ها از کنترل‌پنل‌های غیرپشتیبانی‌شده به cPanel & WHM

این مقاله نحوه مهاجرت دستی اکانت‌ها از کنترل‌پنل‌های غیرپشتیبانی‌شده به cPanel & WHM را توضیح می‌دهد. شامل اقدامات قبل از مهاجرت، نصب سرور جدید، انتقال فایل‌ها و دایرکتوری‌ها، بازیابی دیتابیس‌ها، انتقال SSL، و اقدامات پس از مهاجرت است.

ادامه