আরএইচইএল/সেন্টোস .0.০ এ সক্ষম/অক্ষম ভোমাস্ট বিকল্পগুলি সহ অ্যাপাচি ভার্চুয়াল হোস্টগুলি তৈরি করা


ভার্চুয়াল হোস্টিং আইপি ঠিকানা, হোস্টনাম বা ব্যবহৃত পোর্ট নম্বরের ভিত্তিতে অ্যাপাচি ওয়েবারভারকে বিভিন্ন সামগ্রী পরিবেশন করার অনুমতি দেয়। এই গাইড /etc/httpd/ পাথে দুটি ডিরেক্টরি তৈরি করে রেড হ্যাট এন্টারপ্রাইজ লিনাক্স/সেন্টোস OS.০ এ ভার্চুয়াল হোস্টগুলি সক্ষম ও পরিচালনা করার মত পদ্ধতির জন্য ডেবিয়ান ব্যবহার করবে সমস্ত সক্ষম এবং অক্ষম ওয়েবসাইট ফাইল কনফিগারেশনগুলিতে রাখুন - সাইটগুলি উপলভ্য এবং সাইট-সক্ষম এবং দুটি ধরণের স্ক্রিপ্ট কমান্ড হিসাবে কাজ করতে সক্ষম করুন, একটি যা সক্ষম করে এবং অন্যটি নির্দিষ্ট ভার্চুয়াল অক্ষম করে হোস্টগুলি - a2ensite এবং a2dissite । এই পদ্ধতির কিছু সুবিধা রয়েছে কারণ আপনাকে httpd কনফিগারেশন ফাইলের সাথে ঝামেলা করতে হবে এবং প্রতিটি ভার্চুয়াল হোস্টের নিজস্ব কনফিগারেশন ফাইল রয়েছে যা একটি একক লোকেশনে পাওয়া যায় - সক্ষম হোস্টগুলি কেবলমাত্র প্রতিলিঙ্ক - যা সক্ষম, অক্ষম, তৈরি বা তৈরি করার প্রক্রিয়া তৈরি করে এগুলি খুব পরিচালনাযোগ্য মোছা।

  1. আরএইচইএল/সেন্টোস .0.০
  2. এ ল্যাম্প বেসিক ইনস্টলেশন

RHEL/CentOS 7 এ অ্যাপাচি ভার্চুয়াল হোস্টগুলি তৈরি এবং পরিচালনা করুন

১. শুরু করার জন্য, /ইত্যাদি/httpd/ পাথ দিয়ে প্রবেশ শুরু করুন, সাইটগুলি উপলভ্য এবং সাইটগুলি সক্ষম ডিরেক্টরিগুলি তৈরি করুন এবং নতুন প্রয়োগের জন্য অ্যাপাচি httpd.conf ফাইল সম্পাদনা করুন সক্ষম ওয়েবসাইটের অবস্থান।

# cd /etc/httpd/
# mkdir sites-available sites-enabled
# nano conf/httpd.conf

2. httpd.conf ফাইলটিতে ফাইলের নীচে নীচের দিকনির্দেশক লাইন যুক্ত করুন, যা আপাচি /etc/httpd/সাইটগুলি সক্ষম/ তে অবস্থিত সমস্ত ফাইলকে পঠন এবং বিশ্লেষণ করতে সক্ষম করবে/b> .conf এক্সটেনশনে শেষ হয়েছিল।

IncludeOptional sites-enabled/*.conf

৩. পরবর্তী পদক্ষেপে বর্ণনামূলক নাম ব্যবহার করে সাইটগুলি উপলভ্য অবস্থানে একটি নতুন ভার্চুয়াল হোস্ট তৈরি করুন - এই ক্ষেত্রে আমি rheltest.lan.conf ব্যবহার করেছি - এবং টেমপ্লেট হিসাবে নিম্নলিখিত ফাইল।

# nano /etc/httpd/sites-available/rheltest.lan.conf

গাইড হিসাবে এই কনফিগারেশনটি ব্যবহার করুন।

<VirtualHost *:80>
        ServerName rheltest.lan
        DocumentRoot "/var/www/rheltest.lan"
                <Directory "/var/www/rheltest.lan">
                Options Indexes FollowSymLinks MultiViews
         # AllowOverride controls what directives may be placed in .htaccess files.      
                        AllowOverride All
        # Controls who can get stuff from this server file
                        Order allow,deny
                        Allow from all
           </Directory>
        <IfModule mpm_peruser_module>
                ServerEnvironment apache apache
        </IfModule>
        ErrorLog  /var/log/httpd/rheltest.lan-error.log
        CustomLog /var/log/httpd/rheltest.lan-access.log combined
</VirtualHost>

৪. আপনি যদি আপনার ভার্চুয়াল হোস্টের ডকুমেন্টরুট অবস্থানটি ডিফল্ট থেকে /var/www/html থেকে অন্য পথে পরিবর্তন করেন তবে নিশ্চিত হন যে আপনিও এই পথটি তৈরি করেছেন।

# mkdir -p /var/www/rheltest.lan

দ্রষ্টব্য: এছাড়াও নিশ্চিত করুন যে সার্ভারনাম হোস্টটি একটি বৈধ ডিএনএস রেকর্ড বা আপনার স্থানীয় মেশিন হোস্ট ফাইলটিতে যুক্ত হয়েছে, সেখান থেকে আপনি ওয়েবসাইটটি দেখার পরিকল্পনা করছেন।

৫. এখন এক্সিকিউটেবল সিস্টেমের পথে a2ensite এবং a2dissite বাশ স্ক্রিপ্টগুলি তৈরি করার সময় এসেছে - এক্ষেত্রে /usr/স্থানীয়/বিন/- তবে
আপনি যে কোনও এক্সিকিউটেবল পাথ AT पथ সিস্টেমের ভেরিয়েবল আউটপুট ব্যবহার করতে পারেন।

আপনার সম্পাদকের পছন্দ সহ নিম্নলিখিত ফাইলটি তৈরি করুন।

# nano /usr/local/bin/a2ensite

এটিতে নিম্নলিখিত স্ক্রিপ্টটি যুক্ত করুন।

#!/bin/bash
if test -d /etc/httpd/sites-available && test -d /etc/httpd/sites-enabled  ; then
echo "-----------------------------------------------"
else
mkdir /etc/httpd/sites-available
mkdir /etc/httpd/sites-enabled
fi

avail=/etc/httpd/sites-available/$1.conf
enabled=/etc/httpd/sites-enabled/
site=`ls /etc/httpd/sites-available/`

if [ "$#" != "1" ]; then
                echo "Use script: a2ensite virtual_site"
                echo -e "\nAvailable virtual hosts:\n$site"
                exit 0
else

if test -e $avail; then
sudo ln -s $avail $enabled
else

echo -e "$avail virtual host does not exist! Please create one!\n$site"
exit 0
fi
if test -e $enabled/$1.conf; then

echo "Success!! Now restart Apache server: sudo systemctl restart httpd"
else
echo  -e "Virtual host $avail does not exist!\nPlease see available virtual hosts:\n$site"
exit 0
fi
fi

আপনার সম্পাদকের পছন্দ সহ নিম্নলিখিত ফাইলটি তৈরি করুন।

# nano /usr/local/bin/a2dissite

পুরো নিম্নলিখিত স্ক্রিপ্টটি ফাইলটিতে যুক্ত করুন।

#!/bin/bash
avail=/etc/httpd/sites-enabled/$1.conf
enabled=/etc/httpd/sites-enabled
site=`ls /etc/httpd/sites-enabled/`

if [ "$#" != "1" ]; then
                echo "Use script: a2dissite virtual_site"
                echo -e "\nAvailable virtual hosts: \n$site"
                exit 0
else

if test -e $avail; then
sudo rm  $avail
else
echo -e "$avail virtual host does not exist! Exiting!"
exit 0
fi

if test -e $enabled/$1.conf; then
echo "Error!! Could not remove $avail virtual host!"
else
echo  -e "Success! $avail has been removed!\nPlease restart Apache: sudo systemctl restart httpd"
exit 0
fi
fi

Both. উভয় স্ক্রিপ্ট ফাইল তৈরি হওয়ার পরে নিশ্চিত হয়ে নিন যে সেগুলি নির্বাহযোগ্য and

# chmod +x /usr/local/bin/a2*
# a2ensite vhost_name
# a2disite vhost_name

Test. এটি পরীক্ষা করতে, পূর্বে তৈরি ভার্চুয়াল হোস্টটি সক্ষম করুন, নতুন ভার্চুয়াল হোস্টের সাথে অ্যাপাচি পরিষেবাটি পুনরায় আরম্ভ করুন এবং সরাসরি ব্রাউজার করুন - এই ক্ষেত্রে http://rheltest.lan

# a2ensite rheltest.lan
# systemctl restart httpd

এটাই! এখন আপনি আরএইচইএল/সেন্টোস .0.০ এ অ্যাপাচি ভোস্ট ফাইল পরিচালনা করার জন্য সিস্টেম কমান্ড হিসাবে a2eniste এবং a2dissite ব্যাশ স্ক্রিপ্টগুলি ব্যবহার করতে পারেন।