Environment Variables (.env) Explained
Environment Variables (.env) in Express.js – Full Detailed Guide
Express.js অ্যাপ্লিকেশন ডেভেলপমেন্টে Environment Variables একটি অত্যন্ত গুরুত্বপূর্ণ ভূমিকা পালন করে। সাধারণত API Keys, Database Password, Secret Keys, Port Number ইত্যাদি সংবেদনশীল তথ্য কোডের ভিতরে সরাসরি রাখা উচিত নয়। এই তথ্যগুলো নিরাপদে রাখার জন্য আমরা ব্যবহার করি .env ফাইল।
🟢 Environment Variable কী?
Environment Variables হলো এমন কিছু মান (values) যা আপনার অ্যাপ্লিকেশনের কনফিগারেশন সংরক্ষণ করে। এগুলো সাধারণত:
- API Keys
- Database Credentials
- JWT Secret
- Payment Gateway Secret
- PORT Number
এগুলো .env ফাইলে সংরক্ষণ করলে আপনার কোডে কোনো সংবেদনশীল তথ্য publicly দেখা যায় না।
🟩 কেন .env ব্যবহার করা হয়?
- Security: Sensitive data কোডে না রেখে আলাদা রাখা যায়।
- Easy Configuration: Environment অনুযায়ী config পরিবর্তন করা যায়।
- Clean Code: Hard-coded values থাকে না, কোড থাকে পরিষ্কার।
- Production Support: Development, staging, production—প্রতিটি environment এ ভিন্ন configuration ব্যবহার করা যায়।
🟦 dotenv Package ইনস্টল করা
Node.js এ environment variables ব্যবহার করতে dotenv প্যাকেজ ইনস্টল করতে হয়।
npm install dotenv
🟠 .env ফাইল তৈরি করা
আপনার প্রজেক্টের root ডিরেক্টরিতে একটি .env ফাইল তৈরি করুন।
PORT=5000
DB_USER=root
DB_PASS=12345
JWT_SECRET=mysecretkey123
⚠ Note: কখনোই .env ফাইল GitHub এ push করবেন না। এজন্য অবশ্যই .gitignore ফাইলে `.env` লিখে রাখতে হবে।
🟣 Express.js এ .env কিভাবে ব্যবহার করবেন?
সাধারণত আপনার অ্যাপের রুট ফাইলে (index.js বা app.js) dotenv লোড করতে হয়:
require('dotenv').config();
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.get("/", (req, res) => {
res.send("Server Running...");
});
app.listen(PORT, () => {
console.log("Server running on port " + PORT);
});
🔍 এখানে process.env.PORT ব্যবহার করা হয়েছে, যা .env ফাইল থেকে মান নেবে।
🟤 একাধিক ENV Variable ব্যবহার
require('dotenv').config();
console.log(process.env.DB_USER);
console.log(process.env.DB_PASS);
console.log(process.env.JWT_SECRET);
আপনি যতো variable চান .env ফাইলে যোগ করতে পারবেন।
🔒 .env ফাইল কোথায় নিরাপদ?
- Source code এ hard-coded secret থাকে না
- GitHub এ push না করলে কেউ access পাবে না
- Production server এ আলাদা .env ব্যবহার করা যায়
⭐ Best Practices for Environment Variables
- .env ফাইল সবসময় Git ignore করুন
- Production environment এ ভিন্ন ভিন্ন .env ব্যবহার করুন
- অতি সংবেদনশীল তথ্য encrypt করে রাখুন (optional)
- Key নামগুলো UPPERCASE এ লিখুন
- dotenv config কোডের শুরুতেই লোড করুন
📂 .env ব্যবহার করে Project Structure
project/
│── node_modules/
│── src/
│ ├── server.js
│ ├── routes/
│ └── config/
│── .env
│── .gitignore
│── package.json
🎯 Conclusion
Environment variables Express.js অ্যাপ্লিকেশনকে নিরাপদ, maintainable এবং flexible রাখে। API key, password, secret key ইত্যাদি কোনো sensitive ডেটা কখনোই কোডে hard-coded রাখা উচিত না। তাই .env ব্যবহারের মাধ্যমে আপনি একটি professional ও secure Node.js/Express.js অ্যাপ্লিকেশন তৈরি করতে পারবেন।
লোড হচ্ছে...
1. .env ফাইল কী এবং কেন ব্যবহার করা হয়?
.env ফাইল ব্যবহার করে সেনসিটিভ তথ্য যেমন database password, API key, secret token আলাদা করে রাখা হয়, যাতে সিকিউরিটি বাড়ে এবং কোড পরিষ্কার থাকে।
2. Production ও Development environment আলাদা করার সুবিধা কী?
আলাদা environment ব্যবহার করলে production এ ভুল কনফিগারেশন যাওয়ার ঝুঁকি কমে এবং debugging সহজ হয়।