Ṣiṣẹda Awọn ile-iṣẹ Aṣoju Apache pẹlu Ṣiṣe/Muu Awọn aṣayan Awọn ẹmi ni RHEL/CentOS 7.0


Alejo ti foju gba Apache Weberver laaye lati sin akoonu oriṣiriṣi ti o da lori Adirẹsi IP, orukọ olupin tabi nọmba ibudo ti a lo. Itọsọna yii yoo lo ọna kan Debian bii ọna lori muu ati ṣiṣakoso Awọn ogun Gbigbe lori Idawọle Red Hat Idawọle Linux/CentOS 7.0 nipa ṣiṣẹda awọn ilana meji lori ọna /ati be be/httpd/, eyiti yoo tọju gbogbo muu ṣiṣẹ ati awọn atunto faili oju opo wẹẹbu alaabo - awọn aaye wa- ati awọn aaye ti o ṣiṣẹ , ati awọn oriṣi meji ti awọn iwe afọwọkọ lati ṣiṣẹ bi awọn aṣẹ, ọkan ti o jẹki ati omiiran ti o mu foju kan pato awọn agbalejo - a2ensite ati a2dissite . Ọna yii ni diẹ ninu awọn anfani nitori o ṣe ni lati dabaru pẹlu faili iṣeto httpd ati pe gbogbo olugbalejo foju foju ni faili iṣeto tirẹ ti o le rii lori ipo kan - awọn ọmọ-ogun ti o jẹ ki o jẹ awọn ọna asopọ kan - eyiti o ṣe ilana ti muu, muu ṣiṣẹ, ṣiṣẹda tabi piparẹ wọn ṣakoso pupọ.

  1. Fifi sori Ipilẹ atupa lori RHEL/CentOS 7.0

Ṣẹda ati Ṣakoso awọn Awọn ogun Foju Afun ni RHEL/CentOS 7

1. Lati bẹrẹ, bẹrẹ nipa titẹ si ọna /etc/httpd/, ṣẹda awọn aaye-ti o wa ati awọn ilana ti o ni agbara awọn aaye ati satunkọ faili Apache httpd.conf lati lo tuntun mu ṣiṣẹ awọn aaye ayelujara.

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

2. Lori faili httpd.conf ṣafikun laini itọsọna ti o tẹle ni isalẹ faili naa, eyiti yoo jẹ ki Apache ka ati ṣe atunyẹwo gbogbo awọn faili to wa lori /etc/httpd/sites-enabled/ pari ni itẹsiwaju .conf .

IncludeOptional sites-enabled/*.conf

3. Ni igbesẹ ti n tẹle ṣẹda Oluṣamulo Foju tuntun lori awọn aaye-wa ipo ni lilo orukọ apejuwe kan - ninu idi eyi Mo ti lo rheltest.lan.conf - ati lo atẹle faili bi awoṣe.

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

Lo iṣeto yii bi itọsọna kan.

<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>

4. Ti o ba yipada DocumentRoot ipo lori olupin foju rẹ lati aiyipada /var/www/html si ọna miiran rii daju pe o tun ṣẹda ọna yii.

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

AKIYESI: Tun ṣe idaniloju pe olupin ServerName jẹ igbasilẹ DNS to wulo tabi ti wa ni afikun si awọn ẹrọ ogun ti agbegbe rẹ faili, lati ibiti o ngbero lati ṣabẹwo si oju opo wẹẹbu naa.

5. Nisisiyi o to akoko lati ṣẹda a2ensite ati a2dissite awọn iwe afọwọkọ bash lori ọna eto ṣiṣe - ni ọran yii ni /usr/local/bin/- ṣugbọn
o le lo eyikeyi ọna ṣiṣe ti awọn abajade oniyipada eto.

Ṣẹda faili atẹle pẹlu yiyan olootu rẹ.

# nano /usr/local/bin/a2ensite

Ṣafikun iwe-atẹle wọnyi si rẹ.

#!/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

Ṣẹda faili atẹle pẹlu yiyan olootu rẹ.

# nano /usr/local/bin/a2dissite

Ṣafikun gbogbo iwe afọwọkọ atẹle si faili naa.

#!/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

6. Lẹhin ti a ti ṣẹda awọn faili afọwọkọ mejeeji, rii daju pe wọn ṣee ṣiṣẹ ki o bẹrẹ lilo wọn lati mu ṣiṣẹ tabi mu awọn ọmọ ogun foju nipa fifi orukọ orukọ ẹmi bi aṣẹ paramita.

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

7. Lati ṣe idanwo rẹ, jẹki oluṣakoso foju ti a ṣẹda tẹlẹ, tun bẹrẹ iṣẹ Apache ati aṣawakiri taara si agbalejo foju tuntun - ninu ọran yii http://rheltest.lan .

# a2ensite rheltest.lan
# systemctl restart httpd

O n niyen! Bayi o le lo a2eniste ati a2dissite awọn iwe afọwọkọ bii bi awọn aṣẹ eto lati ṣakoso faili Apache Vhosts lori RHEL/CentOS 7.0.