উত্তর:
Httpd.conf ব্যবহারকারী কনফিগারেশনের জন্য ডিজাইন করা হয়েছে। ভবিষ্যতে আপগ্রেডগুলি দ্বারা আপডেট করা হতে পারে আপনার সত্যিই অ্যাপাচি 2 কোডফোন সম্পাদনা করা উচিত নয়।
একটি অতিরিক্ত বিকল্প হ'ল কেবল আপনার কাস্টম কনফিগারেশনকে /etc/apache2/conf.d- এ রাখা, এই ডিরেক্টরিতে থাকা সমস্ত ফাইলও এতে অন্তর্ভুক্ত রয়েছে।
এগুলি আপনার একমাত্র বিকল্প নয়। উবুন্টু / ডেবিয়ান-এ, অ্যাপাচি সমস্ত ফাইলগুলিতে প্রক্রিয়াজাত করে /etc/apache2/sites-enabled/
(যা ডিরেক্টরিতে ফাইলগুলির মধ্যে প্রতিলিঙ্ক হওয়া উচিতsites-available/
, a2ensite
এবং a2dissite
প্রোগ্রামগুলির দ্বারা পরিচালিত )
আপনি এই ডিরেক্টরিগুলি এর জন্য ব্যবহার করার উদ্দেশ্যে VirtualHost
।
apache2.conf- এ httpd.conf অন্তর্ভুক্ত রয়েছে:
a@test$:/etc/apache2$ cat apache2.conf | grep httpd.conf
Include /etc/apache2/httpd.conf
আমি মনে করি যে httpd.conf অবমূল্যায়ন করা হয়েছে, তবে কেবল রক্ষণশীল লোকদের জন্য রেখে দেওয়া হয়েছে যাতে তারা তাদের পথ খুঁজে পায় ... :)
সম্পাদনা করুন:
রবের উত্তর পড়ার পরে, আমি আরও ভাল গ্রেপ করেছি:
a@test:/etc/apache2$ grep -C 1 httpd.conf apache2.conf
# Include all the user configurations:
Include /etc/apache2/httpd.conf
ব্যবহারকারীর কনফিগারেশনগুলি হ'ল ...
অ্যাপাচি সফটওয়্যার ফাউন্ডেশন অনেকগুলি বিটস সফ্টওয়্যার প্রকাশ করে যার মধ্যে একটি ওয়েব সার্ভারের নাম httpd
। Httpd প্রকল্পের উত্সগুলিতে অন্য একটি জিনিসের মধ্যে একটি httpd.conf
নমুনা কনফিগারেশন ফাইল অন্তর্ভুক্ত থাকে যা ডিফল্টরূপে /usr/local/etc/httpd
বা ইন ইনস্টলড থাকে /etc/httpd
। বেশিরভাগ সিস্টেমে আপনি এইচডিডি নামের এই নামটি পাবেন।
যাইহোক, অনেক আগে এবং দূরে, ডেবিয়ান জিএনইউ / লিনাক্স বিতরণে কারো কাছ থেকে যে বন্টন মধ্যে সফ্টওয়্যার নাম পরিবর্তন করার সিদ্ধান্ত নিয়েছে httpd
থেকে apache2
। সুতরাং একটি ডেবিয়ান সিস্টেমে আপনি apache2.conf
একটি ডিরেক্টরিতে নামের একটি কনফিগারেশন ফাইল পাবেন /etc/apache2
। কে করেছে বা কেন করেছে তা আমি জানি না, তবে এটি উইন্ডোজকে "মাইক্রোসফ্ট" বা ইএসএক্সআই "ভিএমওয়্যার" কল করার সাথে সাথে বার বার বার বিভ্রান্তির উত্স। উবুন্টুর মতো দেবিয়ান ভিত্তিক বিতরণগুলি এই অদ্ভুততার উত্তরাধিকারী। এমনকি নবজাতক পৌঁছে যাবে, তখন একটি ফাইল অন্তর্ভুক্ত /etc/apache2/httpd.conf
যা হয় Include
থেকে ঘ apache2.conf
ব্যবহারকারীদের কাস্টম কনফিগারেশন স্থাপন করতে পারেন যা।
সুতরাং উত্তরটি হ'ল, আপনি যদি কোনও ডেবিয়ান-ভিত্তিক সিস্টেমে থাকেন তবে আপনি আপনার মস্তিষ্ককে এমনভাবে কাজগুলিতে বাঁকান যাতে আপনি এটি করতে চান। অন্যথায় আপনি সাধারণত প্রবাহের পোস্টডিডি প্রকল্প হিসাবে কাজগুলি স্বাভাবিকভাবে করেন।
অ্যাপাচি ২.৪
ব্যবহার করুন:
এতে কোনও কাস্টম কনফিগারেশন রাখুন /etc/apache2/conf-available/{name}.conf
sudo a2enconf {name}
বা আপনার ব্যবহার করে কনফিগারেশন সক্ষম / অক্ষম করুন sudo a2disconf {name}
।
(তারপরে অ্যাপাচি 2 পরিষেবা পুনরায় চালু করুন))
ব্যবহার করবেন না:
httpd.conf
অবচয় করা হয়েছে এবং আপনার আর এটি দেখতে পাওয়া উচিত নয় - আপনি যদি এটি করেন তবে এটি ইনস্টল হিসাবে খালি রেখে দিন।
apache2.conf
এখনও ইনস্টল করা আছে তবে আপনি যদি আপাচি পরিষ্কার / সহজেই আপগ্রেড করতে চান তবে এটি একা ছেড়ে যান।
-
আপনি 'গ্লোবাল' অ্যাপাচি কনফিগারেশনে যা কিছু দেখতে পান তা উপরের হিসাবে আপনার কাস্টম কনফিগারেশনের আওতায় যুক্ত / ওভাররাইড করা যায়।
যদি apache2.conf
খালি না থাকে এবং httpd.conf
খালি হয়, আপনার সম্ভবত ব্যবহার করা উচিত apache2.conf
;-)
তবে আমি মনে করি যে এর মধ্যে একটির মধ্যে অন্যটি রয়েছে (এবং এর মধ্যে একটি সম্পূর্ণরূপে পশ্চাদপটে সামঞ্জস্যতার কারণে রাখা হয়েছে) - সুতরাং, এটি খুব বেশি পরিবর্তন করা উচিত নয়।
তবুও, আপনি যদি কোনও নতুনের মতো কিছু যুক্ত করতে চান VirtualHost
: অন্য কোনও উপ-ডিরেক্টরি নেই, যেখানে আপনি নিজের ফাইলটি রাখতে পেরেছেন এবং এতে অন্তর্ভুক্ত রয়েছে?
এটি সম্ভবত আরও ভাল সমাধান হতে পারে: আপনি ডিফল্ট ফাইলটি পরিবর্তন করতে পারবেন না - যা আপডেটগুলিকে সহজ করবে।
কেবল apache2.conf খুলুন এবং সামগ্রীটি দেখুন:
Include /etc/apache2/mod-enabled/*.conf
Include /etc/apache2/httpd.conf
সুতরাং আপনি যদি নিজের নিজস্ব কনফিগারেশন অন্তর্ভুক্ত করতে চান তবে এটি এটিকে httpd.conf এ যুক্ত করুন এবং apache2.conf স্বয়ংক্রিয়ভাবে এটি পেয়ে যাবে।
অন্যরা যেমন বলেছে, apache2.conf মেশিন উত্পন্ন করতে পারে এবং এটি স্পর্শ না করা ভাল।
আরও তথ্যের জন্য, সাধারণত উবুন্টু apache2.conf ব্যবহার করে এবং Centos httpd.conf ব্যবহার করে। সুতরাং এই ফাইলগুলি নির্ভর করে আপনার কোন ওএস রয়েছে।
নাম এবং কনফিগারেশন ফাইলের অবস্থান সন্ধান করতে আপনাকে এইগুলি করতে হবে:
1) প্রক্রিয়া বলা হয় হিসাবে অনুসন্ধান করুন, এক্ষেত্রে অ্যাপাচি ব্যবহারকারীর সাথে কাজ করা:
ps -ef | grep apache
(এই উদাহরণে, ফেরত httpd
:)
2) বাইনারি দ্বারা ব্যবহৃত ভেরিয়েবলগুলি দেখান:
httpd -V | grep 'HTTPD_ROOT' && httpd -V | grep 'SERVER_CONFIG_FILE'
এক্সট্রাক্ট এবং স্ক্রিনশটগুলি এখানে: http://www.sysadmit.com/2016/12/linux-apache-donde-esta-httpdconf-apache2conf.html