Laravel, Vue, React বা Vite-based project live server-এ deploy করার সময় অনেক developer terminal-এ npm command not found, Vite permission denied অথবা esbuild EACCES error দেখেন। এই সমস্যাগুলো সাধারণত frontend build করার সময় আসে।
এই errorগুলো WebSocket connection failed error-এর মতো নয়। এগুলো server environment এবং file permission related problem। অর্থাৎ Node.js/npm install নেই, npm package install হয়নি, Vite executable permission পায়নি, esbuild binary execute permission পায়নি অথবা node_modules অন্য server থেকে copy করার কারণে permission নষ্ট হয়েছে।
এই guide-এ আমরা aaPanel VPS বা Linux server-এ এই তিনটি common build error কীভাবে solve করতে হয় তা step by step দেখব।
এই errorগুলো কখন আসে?
সাধারণত project folder-এ গিয়ে যখন build command দেওয়া হয়, তখন এই errorগুলো দেখা যায়:
npm run build যদি server ready না থাকে, তাহলে নিচের errorগুলোর যেকোনো একটি আসতে পারে:
Command 'npm' not found node_modules/.bin/vite: Permission denied node_modules/@esbuild/linux-x64/bin/esbuild EACCES এই সমস্যা কেন হয়?
- Server-এ Node.js এবং npm install নেই।
- পুরোনো বা mismatch npm version install হয়েছে।
- Project dependency install করা হয়নি।
- node_modules অন্য জায়গা থেকে copy করা হয়েছে।
- Zip upload করার সময় executable permission নষ্ট হয়েছে।
- Vite file execute permission পায়নি।
- esbuild binary execute permission পায়নি।
- Wrong file ownership বা server permission issue আছে।
Step 1: Correct project folder-এ যান
প্রথমে SSH terminal খুলে project folder-এ যান। aaPanel server হলে project সাধারণত /www/wwwroot/ এর ভিতরে থাকে। আপনার project path অনুযায়ী command change করবেন।
cd /www/wwwroot/your-project/public/core এখন check করুন package.json আছে কিনা:
ls package.json যদি package.json দেখা যায়, তাহলে আপনি সঠিক folder-এ আছেন। যদি না দেখা যায়, তাহলে project-এর correct root folder খুঁজতে হবে। কারণ npm install এবং npm run build সাধারণত package.json থাকা folder থেকেই দিতে হয়।
Step 2: Node.js এবং npm আছে কিনা check করুন
Node.js এবং npm install আছে কিনা check করতে command দিন:
node -v
npm -v যদি version দেখায়, যেমন:
v22.x.x
10.x.x তাহলে Node.js এবং npm install আছে। কিন্তু যদি এই error আসে:
Command 'npm' not found তাহলে server-এ npm install নেই।
Step 3: Node.js 22 এবং npm install করুন
সরাসরি apt install npm দিলে অনেক সময় পুরোনো npm install হয়। তাই NodeSource দিয়ে Node.js 22 install করা ভালো। Node.js install হলে npm-ও সাথে install হবে।
apt update
apt install -y ca-certificates curl gnupg
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node -v
npm -v যদি আগে ভুলভাবে পুরোনো nodejs বা npm install করা থাকে, তাহলে আগে remove করে fresh install করুন:
apt remove -y nodejs npm
apt autoremove -y
apt update
apt install -y ca-certificates curl gnupg
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node -v
npm -v Step 4: npm package install করুন
এখন project folder-এ গিয়ে dependency install করুন:
cd /www/wwwroot/your-project/public/core
npm install যদি project-এ package-lock.json থাকে, তাহলে cleaner install করার জন্য npm ci ব্যবহার করতে পারেন:
cd /www/wwwroot/your-project/public/core
npm ci তারপর build দিন:
npm run build যদি build successful হয়, তাহলে সমস্যা solve হয়ে গেছে। যদি permission denied আসে, তাহলে next step follow করুন।
Step 5: Vite permission denied error fix করুন
যদি এই error আসে:
node_modules/.bin/vite: Permission denied তাহলে Vite file আছে, কিন্তু Linux সেটি execute করতে পারছে না। এই সমস্যা সাধারণত file permission নষ্ট হলে হয়।
Fix করার জন্য command দিন:
cd /www/wwwroot/your-project/public/core
chmod +x node_modules/.bin/vite
chmod +x node_modules/vite/bin/vite.js
npm run build যদি আবারও error আসে, তাহলে bin folder permission fix করুন:
cd /www/wwwroot/your-project/public/core
chmod -R 755 node_modules/.bin
chmod -R 755 node_modules/vite/bin
npm run build Important: 777 permission ব্যবহার করবেন না। 777 দিলে server security দুর্বল হতে পারে। সাধারণত 755 permission যথেষ্ট।
Step 6: esbuild EACCES error fix করুন
যদি build করার সময় এই error আসে:
node_modules/@esbuild/linux-x64/bin/esbuild EACCES তাহলে esbuild binary execute permission পায়নি। Vite production build করার সময় esbuild ব্যবহার করে। তাই esbuild execute না হলে build fail হবে।
Fix command:
cd /www/wwwroot/your-project/public/core
chmod +x node_modules/@esbuild/linux-x64/bin/esbuild
chmod -R 755 node_modules/.bin
chmod -R 755 node_modules/@esbuild
npm run build যদি error থেকে যায়, তাহলে esbuild rebuild করুন:
cd /www/wwwroot/your-project/public/core
npm rebuild esbuild
chmod +x node_modules/@esbuild/linux-x64/bin/esbuild
npm run build Step 7: Clean reinstall করুন
যদি Vite বা esbuild permission fix করার পরও build fail করে, তাহলে node_modules remove করে fresh install করা ভালো। কারণ অনেক সময় node_modules অন্য server থেকে copy করলে binary file mismatch বা permission issue থাকে।
cd /www/wwwroot/your-project/public/core
rm -rf node_modules
npm cache clean --force
npm install --unsafe-perm=true
npm run build Fresh install করলে server-এর operating system অনুযায়ী package এবং binary file নতুনভাবে install হয়। এতে অনেক permission ও binary mismatch problem solve হয়ে যায়।
Step 8: File ownership issue check করুন
কখনো কখনো project file owner mismatch থাকলে permission issue আসতে পারে। aaPanel server-এ web user অনেক সময় www হয়। আপনার server setup অনুযায়ী ownership ঠিক করতে পারেন।
chown -R www:www /www/wwwroot/your-project/public/core তারপর আবার build দিন:
cd /www/wwwroot/your-project/public/core
npm run build এই command দেওয়ার আগে নিশ্চিত হন আপনার server-এ web user আসলেই www কিনা। ভুল user দিলে নতুন permission issue তৈরি হতে পারে।
Step 9: Final build check করুন
সব fix করার পর আবার build দিন:
cd /www/wwwroot/your-project/public/core
npm run build যদি build successful হয়, তাহলে terminal-এ সাধারণত assets generated বা build completed type message দেখাবে। Laravel project হলে public build assets update হয়ে যাবে।
Complete quick fix command list
দ্রুত fix করার জন্য নিচের sequence follow করতে পারেন। অবশ্যই project path নিজের server অনুযায়ী change করবেন।
cd /www/wwwroot/your-project/public/core
node -v
npm -v Node/npm না থাকলে:
apt update
apt install -y ca-certificates curl gnupg
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node -v
npm -v Dependency install:
cd /www/wwwroot/your-project/public/core
npm install Permission fix:
chmod +x node_modules/.bin/vite
chmod +x node_modules/vite/bin/vite.js
chmod +x node_modules/@esbuild/linux-x64/bin/esbuild
chmod -R 755 node_modules/.bin
chmod -R 755 node_modules/@esbuild Build:
npm run build যদি তাও fail করে:
rm -rf node_modules
npm cache clean --force
npm install --unsafe-perm=true
npm run build আর কী কী সমস্যা আসতে পারে?
1. package.json missing
আপনি ভুল folder-এ command দিচ্ছেন। যে folder-এ package.json আছে, সেই folder-এ গিয়ে npm install এবং npm run build দিতে হবে।
2. npm install অনেক সময় নেয়
VPS server slow হলে npm install কিছু সময় নিতে পারে। RAM কম হলে process kill হতে পারে। তখন server resource check করতে হবে।
3. Node version mismatch
Project যদি modern Vite ব্যবহার করে, পুরোনো Node.js version দিলে build fail করতে পারে। তাই Node.js 20 বা 22 ব্যবহার করা ভালো।
4. Permission বারবার নষ্ট হয়
Local computer থেকে node_modules upload না করে server-এ fresh npm install করুন। এতে server-compatible binary install হয়।
5. Build successful কিন্তু website update হয় না
Laravel cache বা browser cache issue হতে পারে। Laravel cache clear করুন:
php artisan optimize:clear
php artisan view:clear
php artisan cache:clear Final checklist
- Correct project folder-এ আছেন।
- package.json file আছে।
- Node.js install আছে।
- npm install আছে।
- npm install বা npm ci successful হয়েছে।
- Vite executable permission ঠিক আছে।
- esbuild executable permission ঠিক আছে।
- node_modules server-এ fresh install করা হয়েছে।
- 777 permission ব্যবহার করা হয়নি।
- npm run build successful হয়েছে।
শেষ কথা
npm command not found, Vite permission denied এবং esbuild EACCES error সাধারণত Laravel, Vue, React বা Vite project live server-এ build করার সময় আসে। এগুলো WebSocket-এর direct problem নয়। এগুলো মূলত Node.js/npm setup এবং Linux file permission related issue।
সমাধানের জন্য প্রথমে Node.js এবং npm install আছে কিনা check করতে হবে। তারপর correct project folder-এ npm install দিতে হবে। Permission issue থাকলে Vite এবং esbuild executable permission fix করতে হবে। তাতেও কাজ না হলে node_modules remove করে fresh install করতে হবে।
RoyelHost Laravel, WordPress, VPS, cloud hosting এবং business website hosting solution provide করে। Modern web application deploy করতে হলে server-এ Node.js, npm build support, proper permission control এবং stable resource থাকা জরুরি। তাই production project deploy করার আগে hosting environment ভালোভাবে check করা উচিত।






No comments yet. Be the first to comment.