javascript - এক্সপ্রেস এ NODE_ENV কি?




node.js express (2)

NODE_ENV express ওয়েবসার্ভার ফ্রেমওয়ার্ক দ্বারা জনপ্রিয় একটি পরিবেশ পরিবর্তনশীল । যখন একটি নোড অ্যাপ্লিকেশন চালানো হয়, এটি পরিবেশ পরিবর্তনশীলের মান পরীক্ষা করে এবং মানের উপর ভিত্তি করে বিভিন্ন জিনিসগুলি করতে পারে। NODE_ENV বিশেষভাবে ব্যবহার করা হয় (কনভেনশন অনুসারে) কোন বিশেষ পরিবেশ একটি উত্পাদন বা একটি উন্নয়ন পরিবেশ কিনা তা জানাতে। একটি সাধারণ ব্যবহারের ক্ষেত্রে ডেভেলপমেন্ট পরিবেশে চলমান অতিরিক্ত ডিবাগিং বা লগিং কোড চলছে।

NODE_ENV অ্যাক্সেস করা হচ্ছে

পরিবেশগত পরিবর্তনশীল নিজেকে অ্যাক্সেস করতে আপনি নিম্নলিখিত কোডটি ব্যবহার করতে পারেন যাতে আপনি নিজের পরীক্ষা এবং যুক্তিগুলি সম্পাদন করতে পারেন:

var environment = process.env.NODE_ENV

অথবা বিকল্পভাবে এক্সপ্রেস ' app.get('env') ( নোট: এটি "development" থেকে ডিফল্ট)

সচেতন থাকুন যে আপনি যদি আপনার পরিবেশের জন্য NODE_ENV স্পষ্টভাবে সেট না করে থাকেন তবে এটি undefined

NODE_ENV সেট করা হচ্ছে

কিভাবে আসলে পরিবেশ পরিবর্তনশীল সেটআপ অপারেটিং সিস্টেম থেকে অপারেটিং সিস্টেমে পরিবর্তিত হয়, এবং আপনার ব্যবহারকারী সেটআপ উপর নির্ভর করে।

আপনি যদি পরিবেশ ভেরিয়েবলটি এক-অফ হিসাবে সেট করতে চান তবে আপনি কমান্ড লাইন থেকে এটি করতে পারেন:

  • linux & mac : export NODE_ENV=production
  • উইন্ডোজ : $env:NODE_ENV = 'production'

দীর্ঘমেয়াদে আপনাকে এটি অবিরত রাখতে হবে যাতে এটি পুনঃসূচনা না করলে এটি সেট না করা যায় - এটি করার সমস্ত সম্ভাব্য পদ্ধতি তালিকা করার পরিবর্তে, আমি আপনাকে এটি কীভাবে করতে হবে তা সন্ধান করতে দেব!

কনভেনশনটি নির্দেশ করেছে যে NODE_ENV- এর জন্য কেবলমাত্র দুটি মানই ব্যবহার করা উচিত, হয় production বা development , সকল ছোট হাতের অক্ষর। আপনি আরো মান যুক্ত করতে বাধা দিচ্ছেন না, তবে এটি সম্ভবত কোনও ভাল ধারণা নয়, কারণ আমি ব্যবহার করি এমন অনেক নোড_মডুলগুলির মধ্যে এই ধরণের কোড দেখতে পাচ্ছি:

var development = process.env.NODE_ENV !== 'production';

নোট অ্যাপ্লিকেশনের মধ্যে থেকে NODE_ENV সেট করার চেষ্টা করার জন্য এটি সত্যিই একটি খারাপ ধারণা যা মনে রাখবেন - যদি আপনি এটি শুধুমাত্র সেট হওয়া প্রক্রিয়াটিতেই প্রয়োগ করেন তবে এটি সম্ভবত আপনার কাজ করার মতো কাজ করবে না। এটা করবেন না - আপনি এটা অনুশোচনা করবেন।

var app = express();
app.set('views',settings.c.WEB_PATH + '/public/templates');
app.set('view engine','ejs');
app.configure(function(){
    app.use(express.favicon());
    app.use(express.static(settings.c.WEB_PATH + '/public'));
    app.use(express.bodyParser());
    app.use(express.cookieParser());
    app.use(express.methodOverride());
    app.use(express.session({
            cookie:{ domain:"."+settings.c.SITE_DOMAIN, maxAge:1440009999},
            secret:'hamster',
            store: r_store,
            }));
    app.use(useragent.express());
    app.use(flash());
    app.use(passport.initialize());
    app.use(passport.session());
});

এই আমার অ্যাপ্লিকেশন। আমি বর্তমানে উত্পাদন এটি চলমান।

যাইহোক, কেউ আমাকে NODE_ENV সম্পর্কে NODE_ENV । আমি কি এই কোডটি যুক্ত করতে হবে? আমি কিভাবে এটা যোগ করব?


NODE_ENV একটি পরিবেশগত পরিবর্তনশীল যা এক্সপ্রেস সার্ভারে নোড পরিবেশের জন্য দাঁড়িয়েছে।

আমরা কিভাবে পরিবেশে সেট এবং এটি সনাক্ত করা হয়।

এটি production এবং development ব্যবহার করে খুব সাধারণ।

সেট করুন:

export NODE_ENV=production

পাওয়া:

আপনি app.get('env') ব্যবহার করে এটি পেতে পারেন





express