~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_passengerea-apache24-mod_env
و یکی از نسخههای Node.js:
ea-nodejs16ea-nodejs18ea-nodejs20ea-nodejs22
2.2 بستههای موردنیاز برای AlmaLinux 9 / Rocky Linux 9
ea-apache24-mod-passengerea-apache24-mod_env
2.3 بستههای موردنیاز برای CentOS 7
ea-ruby27-mod_passengerea-apache24-mod_envea-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 را بهصورت ایمن و پایدار روی سرور خود اجرا کنید.
نوشته و پژوهش شده توسط دکتر شاهین صیامی