Red Hat Enterprise Linux, Arch, Scientific Linux, Debian Server, Ubuntu সার্ভার বা অন্য যেকোন ডিস্ট্রিবিউশনে apache2 পরিষেবা ইনস্টল করার সময়, আপনি দেখতে পেতে পারেন যে আপনি mod_authz_host মডিউল সম্পর্কে একটি ত্রুটি পেয়েছেন যা পরিষেবাটির সম্পাদনকে বাধা দেয়। আপনি সম্ভবত apache2 পরিষেবাটি পুনরায় চালু করার সময় এই ত্রুটিটিকে একটি সমস্যা বলে মনে করবেন। এই ত্রুটিটি সাধারণত ফাইলের প্রথম লাইন সম্পর্কে একটি সিনট্যাক্স সতর্কতা আকারে আসে, তবে আপনি তাত্ত্বিকভাবে কিছু ভিন্ন ত্রুটি পেতে পারেন।
যে লাইনে আপনার সমস্যা হতে পারে তা নির্বিশেষে, mod_authz_host ইনস্টল না হওয়া বা এমনকি RAM-তে লোড না হওয়ার সাথে ফিক্সের খুব একটা সম্পর্ক নেই। আসলে, আপনি যদি এই ত্রুটিটি পেয়ে থাকেন তবে এর মানে হল apache2 সার্ভার পরিষেবাটি সঠিকভাবে মডিউলটি লোড করছে। সমস্যাটি শুধুমাত্র এই সত্যের সাথে সম্পর্কিত যে একটি নির্দেশনা কোথাও স্থানের বাইরে রয়েছে এবং কোডটি পুনর্বিন্যাস করলে আপনার সমস্যাটি খুব দ্রুত সমাধান করা উচিত। অনুগ্রহ করে মনে রাখবেন যে আপনি মাঝে মাঝে apache2 এ mod_authz_host ইনস্টল করার নির্দেশাবলী দেখতে পাবেন, যা এই আলোচনার সাথে অপ্রাসঙ্গিক। আপনার ত্রুটিগুলি একটি নির্দিষ্ট প্যাকেজের অভাব থেকে আসে না বা সেগুলি কোনও ধরণের অপূর্ণ নির্ভরতা থেকে আসে না। বিকাশকারীরা যেভাবে এই ত্রুটিগুলিকে শব্দগুচ্ছ করার জন্য নির্বাচিত করেছে তা এই সাধারণ ভুল ধারণার দিকে নিয়ে যায়৷
৷restrict.conf মডিউল নির্দেশিকা সংশোধন করা
আলোচনার স্বার্থে, আমরা distrowatch.com-এ লিনাক্স ডিস্ট্রিবিউশন এনসাইক্লোপিডিয়া ব্যবহার করব আমাদের উদাহরণের জন্য। অফিসিয়াল apache2 ডকুমেন্টেশন একটি উদাহরণ হিসাবে dev.example.com ব্যবহার করে, এবং যে কোনও ক্ষেত্রে, আপনি এই ঠিকানাগুলির একটিও ব্যবহার করতে চাইবেন না৷
একটি টেক্সট এডিটর দিয়ে ফাইলটি খুলুন। যেহেতু এটি একটি সুরক্ষিত ডিরেক্টরিতে রয়েছে, তাই আপনার রুট অ্যাক্সেস থাকতে হবে। আমরা ব্যবহার করেছি, কিন্তু আপনি vi বা আপনার পছন্দের অন্য টেক্সট এডিটরও ব্যবহার করতে পারেন। এমনকি আপনাকে অবশ্যই কনসোল সম্পাদক ব্যবহার করতে হবে না, তবে এটি করার জন্য উপযুক্ত হলে sudo এর পরিবর্তে gksu ব্যবহার করা নিশ্চিত করুন৷
একবার আপনি ফাইলটি লোড করার পরে, এমন কিছুর প্রতি গভীর মনোযোগ দিন যা পড়ে, উদাহরণস্বরূপ:
অর্ডার অস্বীকার করুন, অনুমতি দিন
সকল থেকে অস্বীকার করুন
distrowatch.com থেকে অনুমতি দিন
এই পাঠ্যটি শুধুমাত্র
অবস্থান />
আদেশ অস্বীকার করুন, অনুমতি দিন
সকল থেকে অস্বীকার করুন
distrowatch.com থেকে অনুমতি দিন
অবস্থান>
মনে রাখবেন যে আপনি যে আসল URL এর সাথে কাজ করছেন তার সাথে আপনাকে distrowatch.com প্রতিস্থাপন করতে হবে। আপনি যদি dev.example.com সরাসরি উল্লেখ করে এমন কোনো লাইন খুঁজে পান, তাহলে আপনি হয় সেগুলিকে সরাসরি উদাহরণ কোড থেকে কপি করেছেন অথবা সেগুলি ডিফল্টরূপে যোগ করা হয়েছে। example.com ডোমেনটি কেবলমাত্র প্রযুক্তিগত নথিতে চিত্রিত করার জন্য বিদ্যমান এবং কোন বাস্তব উদ্দেশ্য পূরণ করে না। httpd.apache.org/docs/2.2/howto/access.html এ অফিসিয়াল ডকুমেন্টেশন প্রকৃতপক্ষে তাদের উল্লেখ করে। আপনি যখন নতুন টেক্সট যোগ করবেন তখন আপনি সম্ভবত নিরাপদে এগুলি সরিয়ে ফেলতে পারেন।
আপনার যদি কখনও আপনার restrict.conf ফাইলে একটি ডিরেক্টরি অন্তর্ভুক্ত করার প্রয়োজন হয়, তাহলে আপনি
অ্যাপাচি সার্ভারের অর্থ এটিই যখন এটি একটি ত্রুটি ফেরত দেয় যেমন:
প্রকৃত ত্রুটির অক্টোথর্পের জায়গায় একটি লাইন নম্বর থাকবে, কিন্তু এটি নির্দেশ করে যে নির্দেশাবলী উল্লিখিত ট্যাগের ভিতরে নিরাপদে আবদ্ধ নয়। আপনি স্ক্রিপ্ট ডিবাগ করার সময় ত্রুটিতে প্রদত্ত লাইনে সরাসরি নেভিগেট করতে চাইতে পারেন এতে কি ভুল আছে তা পরীক্ষা করতে। যদিও প্রশ্নে ত্রুটি আপনাকে বলবে যে Apache ত্রুটি লগে আরও তথ্য থাকতে পারে, এটি সম্ভবত এখানে আলোচনা করা একই ধারণাগুলিকে শক্তিশালী করবে৷
ভবিষ্যত সিনট্যাক্স ত্রুটি একই ফ্যাশনে সংশোধন করা যেতে পারে। আপনি হয়তো দেখতে পাবেন যে এটি ঠিক করার পরে, apache2 পরিষেবাটি অন্য একটি ত্রুটি বের করে দেয়। এটি স্বাভাবিক, যতটা অদ্ভুত শোনাতে পারে কারণ এটি শুধুমাত্র প্রথম লাইনের সাথে একটি সমস্যা খুঁজে পাওয়া পর্যন্ত কোডটি কার্যকর করে। যদি লাইনের নিচে আরও সমস্যা থাকত, তবে এটি তাদের কাছে কখনই পেত না। আপনার যদি এই ধরনের কোনো সমস্যা থাকে, তাহলে ফাইলটি সম্পাদনা করার সময় লাইন নম্বরের প্রতি গভীর মনোযোগ দিন। আপনি যদি ফাইলটি সম্পাদনা করতে ন্যানো ব্যবহার করেন, তাহলে আপনি সর্বদা Ctrl কী চেপে ধরে রাখতে পারেন এবং আপনার কার্সার বর্তমানে কোন লাইনে রয়েছে তা খুঁজে পেতে C কী চাপতে পারেন। এটি ডিবাগিং প্রক্রিয়াটিকে আরও মসৃণ করে তুলবে৷
৷আপনি দেখতে পাবেন যে আপনার চারপাশে এমনভাবে ভাসমান একাধিক ব্লক রয়েছে যা কোনও কিছুর সাথে সংযুক্ত নয়। এগুলোর প্রত্যেকটিতে ট্যাগ থাকা দরকার। আপনার কাছে একই ইউআরএলের একাধিক কপি একই সঠিক নির্দেশাবলীর সাথে পাওয়া গেলে অতিরিক্ত ব্লকগুলি সরিয়ে ফেলুন কারণ এই সদৃশগুলি সম্ভাব্য সমস্যার কারণ হতে পারে। আপনার সাধারণত কোনো নির্দিষ্ট ইউআরএলের একটি মাত্র কপি থাকতে হবে, যেহেতু আপনি একটি সম্পর্কে অতিরিক্ত নির্দেশাবলী apache2 সার্ভারে প্রেরণ করবেন না কারণ তারা শেষ পর্যন্ত একে অপরকে প্রতিহত করতে পারে।
লেখক সম্পর্কে
কেভিন অ্যারোস
কেভিন অ্যারোস এক দশকেরও বেশি শিল্প অভিজ্ঞতার সাথে একজন অত্যন্ত অভিজ্ঞ এবং জ্ঞানী প্রযুক্তি বিশেষজ্ঞ। তিনি মাইক্রোসফ্ট সার্টিফাইড টেকনোলজি স্পেশালিস্ট (MCTS) সার্টিফিকেশন ধারণ করেছেন এবং সর্বশেষ প্রযুক্তিগত উন্নয়ন সম্পর্কে আপ-টু-ডেট থাকার গভীর আবেগ রয়েছে। সফটওয়্যার ডেভেলপমেন্ট, সাইবার সিকিউরিটি, এবং ক্লাউড কম্পিউটিং-এর মতো ক্ষেত্রগুলিতে তার দক্ষতা এবং জ্ঞান প্রদর্শন করে কেভিন প্রযুক্তি-সম্পর্কিত বিষয়গুলির বিস্তৃত পরিসরে ব্যাপকভাবে লিখেছেন। কারিগরি ক্ষেত্রে তার অবদান তার সমবয়সীদের দ্বারা ব্যাপকভাবে স্বীকৃত এবং সম্মানিত হয়েছে এবং জটিল প্রযুক্তিগত ধারণাগুলিকে স্পষ্ট এবং সংক্ষিপ্তভাবে ব্যাখ্যা করার ক্ষমতার জন্য তিনি অত্যন্ত সম্মানিত।