Filters
Zo zoek je
  • Gewone woorden vinden namen, teksten en voorbeelden.
  • "twee woorden" vindt precies die zin.
  • --naam of -x vindt een optie.
  • #woord zoekt alleen in commando's.
  • @grep vindt lessen en labs die grep gebruiken.
  • Filters: cat:network · in:labs · in:notes · level:rhcsa · ch:8 · root:yes. Zet ! voor een woord om het weg te laten. OR tussen woorden betekent één ervan.
  • ↑ ↓ bewegen · Enter openen · Esc sluiten · / zoeken

Lab 21.1RHCSA 10, Hoofdstuk 21

Host two websites

Niveau
Gemiddeld
40 min
Machines
server1, server2
Status
Nog niet begonnen

Dit deel is nog niet vertaald. Je ziet de Engelse tekst.

Doel

Set up Apache on server1 with two name-based websites, one more site on port 82, and test everything from server2.

Voordat je begint

  • Work on server1 as root. A repository must be available.
  • On server2, add 192.168.122.10 www1.example.com www2.example.com to /etc/hosts.

Taken

  1. Install Apache, make it start at boot, and open HTTP in the firewall.
  2. Create the site www1.example.com with the content "www1" in /srv/www1, and www2.example.com with "www2" in /srv/www2.
  3. Make sure SELinux allows Apache to read both folders (permanently).
  4. Serve the folder /srv/www2 also on port 82 for any name.
  5. From server2, test both names on port 80 and port 82.

Controleer je werk

apachectl configtest
ls -Zd /srv/www1 /srv/www2
semanage port -l | grep http_port_t
curl http://www1.example.com
curl http://www2.example.com
curl http://192.168.122.10:82
  • The answers are "www1", "www2" and "www2".
  • The folders have the type httpd_sys_content_t; port 82 is in http_port_t.

Hints

Toon de hints

Oplossing

Toon de oplossing
  1. Install and open.
    dnf install -y httpd
    systemctl enable --now httpd
    firewall-cmd --add-service=http --permanent; firewall-cmd --reload
  2. Content.
    mkdir -p /srv/www1 /srv/www2
    echo www1 > /srv/www1/index.html; echo www2 > /srv/www2/index.html
  3. SELinux labels.
    semanage fcontext -a -t httpd_sys_content_t "/srv/www[12](/.*)?"
    restorecon -Rv /srv
  4. The config (tasks 2 and 4) and the port.
    /etc/httpd/conf.d/sites.conf
    <Directory "/srv">
        Require all granted
    </Directory>
     
    <VirtualHost *:80>
        ServerName www1.example.com
        DocumentRoot /srv/www1
    </VirtualHost>
     
    <VirtualHost *:80>
        ServerName www2.example.com
        DocumentRoot /srv/www2
    </VirtualHost>
     
    Listen 82
    <VirtualHost *:82>
        DocumentRoot /srv/www2
    </VirtualHost>
    semanage port -a -t http_port_t -p tcp 82
    firewall-cmd --add-port=82/tcp --permanent; firewall-cmd --reload
    apachectl configtest && systemctl restart httpd
  5. Test from server2.
    curl http://www1.example.com; curl http://www2.example.com; curl http://192.168.122.10:82

Mijn notities

Nog geen notities.

Lessen voor dit lab

Commando's in dit lab