অ্যাপাচে ডিফল্ট ডকুমেন্ট রুট কীভাবে অক্ষম করবেন?


13

আমি আমার সার্ভারে অ্যাপাচি এইচটিপিডি চলমান কয়েকটি ওয়েবসাইট হোস্ট করি। প্রতিটি ওয়েবসাইটের নিজস্ব ডোমেন বা সাব-ডোমেন এবং ভার্চুয়াল হোস্ট থাকে। অতএব, আমার কোনও ডিফল্ট ডকুমেন্টের রুট নেই। এটি নিষ্ক্রিয় করা সম্ভব DocumentRootমধ্যে /etc/httpd/conf/httpd.conf?

উত্তর:


10

অন্যান্য উত্তরের জন্য ধন্যবাদ। আমি কোনও অনুমতি ছাড়াই একটি ডিফল্ট ভার্চুয়াল হোস্ট যুক্ত করে এটি সমাধান করেছি। গ্লোবাল DocumentRootএবং ServerNameঅপশনগুলি অবশ্যই ভার্চুয়াল হোস্টে উল্লিখিতগুলির সাথে মেলে।

/etc/httpd/conf/httpd.conf

...
ServerName <server-ip>:80

DocumentRoot "/var/www/html"

<Directory />
    Order Deny,Allow
    Deny from all
    Options None
    AllowOverride None
</Directory>
...

/etc/httpd/conf.d/default.conf

<VirtualHost *:80>
        ServerName <server-ip>
        DocumentRoot /var/www/html
</VirtualHost>

এইভাবে, সার্ভারটি আইপি দ্বারা সরাসরি অ্যাক্সেস করা হলে আমি একটি 403 নিষিদ্ধ বার্তা পাই যা আমি যা চেয়েছিলাম ঠিক তেমনটাই। এটির জন্য আমার যদি /var/www/htmlকোনও বিদ্যমান ডিরেক্টরি প্রয়োজন না হয় তবে এটি আরও ভাল হবে তবে আমি তার /dev/nullপরিবর্তে এর মতো কিছু নির্দিষ্ট করে দিলে অ্যাপাচি অভিযোগ করে।


6

আমি নিশ্চিত না যে আপনি এটি করতে চান। যদি অ্যাপাচি কনফিগারেশনে কোনও ডিফল্ট ভোস্ট না থাকে তবে প্রথম সংজ্ঞায়িত vhost ডিফল্ট হয়

আপনার সত্যিই যা করতে হবে তা হল ডিফল্ট একটি খালি পৃষ্ঠা পরিবেশন করা।


6

হ্যা এবং না.

আপনি মন্তব্য করতে বা DocumentRootনির্দেশকে সরাতে পারেন , কোনও সমস্যা নেই। তবে এটি খুব বেশি অর্জন করে না, কারণ তখন এটি পূর্বনির্ধারিত ডিরেক্টরিতে ডিফল্ট হয়ে যায় PREFIX/htdocs/যেখানে আপনি অ্যাপাচি তৈরি করার সময় PREFIX সেট করা থাকে।

যখন আপনার ভার্চুয়ালহোস্টগুলি সমস্ত অনুরোধ সেট আপ করে থাকে যা স্পষ্টভাবে কনফিগার করা ভার্চুয়াল হোস্ট দ্বারা পরিচালিত হয় না ডিফল্ট ভার্চুয়ালহোস্ট (যা সাধারণত প্রথমটি হয় তবে httpd -Sআপনাকে জানাবে) দ্বারা পরিচালিত হয় ।


1

এর .confমধ্যে অবস্থিত এক্সটেনশন সহ যে কোনও অ্যাপাচি কনফিগারেশন ফাইল অ্যাপাচি কনফিগারেশনের /etc/httpd/conf.d/অংশ হিসাবে অন্তর্ভুক্ত করা হবে। সুতরাং ডিফল্ট "স্বাগত" পৃষ্ঠা কনফিগারেশন অক্ষম করতে আমাদের এটির কনফিগারেশনটির নতুন নামকরণ করতে হবে/etc/httpd/conf.d/welcome.conf:

একটি পদক্ষেপ ডিফল্ট ওয়েলকাম ফাইল:

sudo mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.backup 

দ্বিতীয় পুনরায় বুট করা অ্যাপচি 2 পরিষেবা

sudo systemctl restart httpd

0

আপনার /etc/httpd/conf/httpd.conf- এ, যদি আপনার শোনার নির্দেশনা থাকে

Listen 80

তার মানে

*:80

আপনি আপনার /etc/httpd/conf/httpd.conf এবং /etc/httpd/conf.d/default.conf এ একটি দম্পতি <listener>+ সংজ্ঞায়িত <servename>করেছেন যা একই: *:80+ <server-ip>। সুতরাং, অ্যাপাচি কেবল একটিকে অ্যাকাউন্টে নেয়।

সুতরাং, আপনার vhost কনফিগারেশনের কোনও ব্যবহার নেই।

আপনার /etc/httpd/conf/httpd.conf আপনার / var / www / html ডিরেক্টরিতে অ্যাক্সেস আটকাতে যথেষ্ট।

কেবল যুক্ত করুন:

<Directory /var/www/html>
    Order Deny,Allow
    Deny from all
    Options None
    AllowOverride None
</Directory>

দয়া করে https://httpd.apache.org/docs/2.4/en/vhosts/name-based.html#alg এ পড়ুন :

সার্ভারটি সঠিক নাম ভিত্তিক ভার্চুয়াল হোস্টটি কীভাবে নির্বাচন করে

নাম-ভিত্তিক ভার্চুয়াল হোস্ট রেজোলিউশনের প্রথম ধাপটি আইপি-ভিত্তিক রেজোলিউশন recognize নাম-ভিত্তিক ভার্চুয়াল হোস্ট রেজোলিউশন প্রার্থীদের সেরা আইপি-ভিত্তিক ম্যাচে সংকুচিত করার পরে কেবলমাত্র উপযুক্ত নাম ভিত্তিক ভার্চুয়াল হোস্টটি বেছে নেয়। ভার্চুয়ালহস্টের সমস্ত নির্দেশিকায় আইপি ঠিকানার জন্য ওয়াইল্ডকার্ড (*) ব্যবহার করা এই আইপি-ভিত্তিক ম্যাপিংটিকে অপ্রাসঙ্গিক করে তোলে।

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

আপনি যদি কোনও নাম-ভিত্তিক ভার্চুয়াল হোস্টের থেকে সার্ভারনাম নির্দেশিকা বাদ দেন, সার্ভারটি সিস্টেম হোস্টের নাম থেকে প্রাপ্ত সম্পূর্ণরূপে যোগ্যতাসম্পন্ন ডোমেন নাম (এফকিউডিএন) এ ডিফল্ট হবে। এই সুস্পষ্টভাবে সেট করা সার্ভারের নামটি পাল্টা স্বজ্ঞাত ভার্চুয়াল হোস্টের মিলের দিকে নিয়ে যেতে পারে এবং নিরুৎসাহিত করা হয়।

কোনও আইপি এবং পোর্ট সংমিশ্রণের জন্য ডিফল্ট নাম-ভিত্তিক ভোস্ট যদি কোনও সর্বাধিক নির্দিষ্ট মিলে যাওয়া আইপি ঠিকানা এবং পোর্ট সংমিশ্রণ সহ ভার্চুয়াল হোস্টের সেটে কোনও সার্ভারনাম বা সার্ভারএলিয়াসের সন্ধান না পাওয়া যায়, তবে প্রথম তালিকাভুক্ত ভার্চুয়াল হোস্ট যা মিলবে তার সাথে মিলবে।


0

কেবলমাত্র এতে ডিফল্ট পোর্ট পরিবর্তন করুন:

Listen 80
Listen 8080 # any fake port

এবং ভার্চুয়াল হোস্টে * .80 ছেড়ে যান

অ্যাপাচি 2 এবং সেন্টোস 7 নিয়ে আমার জন্য কাজ করে

ডকুমেন্টেশনে আপনি আরও উদাহরণ পেতে পারেন । _ডিফল্ট_ ভেরিয়েবলটি একবার দেখুন।


0

এই পৃষ্ঠাটি অক্ষম করতে, আমাদের /etc/httpd/conf.d/welcome.conf ফাইলটির অন্য কোনও নামকরণ করতে হবে বা আপনার প্রয়োজন না হলে আপনি কেবল এটি মুছতে পারেন।

এমভি /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf_backup

কমান্ডটি দিয়ে অ্যাপাচি পুনরায় চালু হয়েছে (রুট হিসাবে):

systemctl পুনরায় আরম্ভ করুন httpd

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.