Introduksjon til Apache HTTPD
        
        
          Apache HTTPD pakken inneholder en
          åpen kildekode HTTP server. Det er nyttig for å lage lokale
          intranett nettsteder eller kjøre store nettserveringsoperasjoner.
        
        
          
          
            Notat
          
          
            Utviklingsversjoner av BLFS kan kanskje ikke bygge eller kjøre
            noen pakker riktig hvis LFS eller avhengigheter har blitt
            oppdatert siden de siste stabile versjonene av bøkene.
          
         
        
          Pakkeinformasjon
        
        
        
          Ytterligere Nedlastinger
        
        
        
          Apache HTTPD Avhengigheter
        
        
          Påkrevd
        
        
          Apr-Util-1.6.3
        
        
          Valgfri
        
        
          Brotli-1.2.0, Doxygen-1.15.0, jansson-2.14.1, libxml2-2.15.1, Lua-5.4.8, Lynx-2.9.2 eller Links-2.30 eller
          ELinks, nghttp2-1.68.0, OpenLDAP-2.6.10
          (Apr-Util-1.6.3 må være installert med ldap
          støtte), rsync-3.4.1, Berkeley
          DB (deprecated), og Distcache
        
       
      
        
          Installasjon av Apache HTTPD
        
        
          Av sikkerhetsgrunner, å kjøre serveren som en uprivilegert bruker
          og gruppe oppfordres sterkt. Opprett følgende gruppe og bruker ved
          å bruke følgende kommandoer som root:
        
        groupadd -g 25 apache &&
useradd -c "Apache Server" -d /srv/www -g apache \
        -s /bin/false -u 25 apache
        
          Bygg og installer Apache HTTPD ved
          å kjøre følgende kommandoer:
        
        patch -Np1 -i ../httpd-blfs_layout-1.patch             &&
sed '/dir.*CFG_PREFIX/s@^@#@' -i support/apxs.in       &&
sed -e '/HTTPD_ROOT/s:${ap_prefix}:/etc/httpd:'       \
    -e '/SERVER_CONFIG_FILE/s:${rel_sysconfdir}/::'   \
    -e '/AP_TYPES_CONFIG_FILE/s:${rel_sysconfdir}/::' \
    -i configure  &&
./configure --enable-authnz-fcgi                    \
            --enable-layout=BLFS                    \
            --enable-mods-shared="all cgi"          \
            --enable-mpms-shared=all                \
            --enable-suexec=shared                  \
            --with-apr=/usr/bin/apr-1-config        \
            --with-apr-util=/usr/bin/apu-1-config   \
            --with-suexec-bin=/usr/lib/httpd/suexec \
            --with-suexec-caller=apache             \
            --with-suexec-docroot=/srv/www          \
            --with-suexec-uidmin=100                \
            --with-suexec-userdir=public_html       \
            --with-suexec-logfile=/var/log/httpd/suexec.log &&
make
        
          Denne pakken kommer ikke med en testpakke.
        
        
          Nå, som root bruker:
        
        make install  &&
mv -v /usr/sbin/suexec /usr/lib/httpd/suexec &&
chgrp apache           /usr/lib/httpd/suexec &&
chmod 4754             /usr/lib/httpd/suexec &&
chown -v -R apache:apache /srv/www
       
      
        
          Parameterforklaringer
        
        
          sed
          '/dir.*CFG_PREFIX/s@^@#@'...: Tvinger apxs verktøyet til å bruke absolutte banenavn
          for moduler, når du blir bedt om det.
        
        
          sed -e '/HTTPD_ROOT/s
          ...: Fikser noen stier.
        
        
          --enable-authnz-fcgi: Bygg
          FastCGI autorisasjonsbasert autentisering og autorisasjon
          (mod_authnz_fcgi.so fast CGI-modul).
        
        
          --enable-mods-shared="all
          cgi": Modulene bør bli kompilert og brukt som Dynamic
          Shared Objects (DSOer) slik at de kan inkluderes og ekskluderes fra
          serveren ved å bruke kjøretidskonfigurasjonsdirektivene.
        
        
          --enable-mpms-shared=all:
          Denne bryteren sørger for at alle MPM (Multi Processing Modules) er
          bygget som dynamiske delte objekter (DSOer), slik at brukeren kan
          velge hvilken som skal brukes under kjøring.
        
        
          --enable-suexec: Denne
          bryteren aktiverer byggingen av Apache suEXEC modulen som kan brukes til å
          tillate brukere til å kjøre CGI og SSI skript under andre brukere
          sine IDer enn bruker IDen av den anropende webserveren.
        
        
          --with-suexec-*: Disse
          bryterne kontrollerer suEXEC modulen sin oppførsel, for eksempel
          standard dokumentrot, minimal UID som kan brukes til kjøre skriptet
          under suEXEC. Vær oppmerksom på at med minimal UID 100, kan du ikke
          kjøre CGI eller SSI skript under suEXEC som apache bruker.
        
        
          ...
          /usr/lib/httpd/suexec: Disse kommandoene setter
          suexec innpakning på
          riktig plassering, siden den ikke er ment å kjøres direkte. De
          justerer også skikkelige tillatelser til binæren, noe som gjør den
          setgid apache.
        
        
          chown -R apache:apache
          /srv/www: Som standard, installasjonsprosessen
          installerer filer (dokumentasjon, feilmeldinger, standardikoner
          osv.) med eierskapet til brukeren som hentet ut filer fra tar
          filen. Hvis du ønsker å endre eierskapet til en annen bruker, bør
          du gjøre det på dette tidspunktet. Det eneste kravet er at
          dokumentmappen må være tilgjengelige for httpd prosessen med (r-x)
          tillatelser og filer må være lesbare (r--) av apache brukeren.
        
       
      
        
          Konfigurere Apache
        
        
          
            Konfigurasjonsfiler
          
          
            /etc/httpd/httpd.conf og
            /etc/httpd/extra/*
          
         
        
          
            Konfigurasjonsinformasjon
          
          
            Se file:///usr/share/httpd/manual/configuring.html
            for detaljerte instruksjoner om å tilpasse din Apache HTTP serverkonfigurasjonsfil.
          
          
            Det er ingen grunn, i det minste for nettsteder med internett,
            ikke å bruke SSL kryptering. Å sette opp et sikret nettsted
            koster ikke noe bortsett fra å installere et lite lite verktøy og
            noen få minutter med konfigurasjonsarbeid. Bruk denne
            retningslinjen på https://wiki.linuxfromscratch.org/blfs/wiki/Securing_a_website
            for å opprette verdensomfattende aksepterte sertifikater og forny
            dem regelmessig.
          
         
        
          
            Oppstartsskript
          
          
            Hvis du vil at Apache serveren
            skal starte automatisk når systemet startes opp, installer
            /etc/rc.d/init.d/httpd init skriptet
            inkludert i blfs-bootscripts-20250225 pakken:
          
          make install-httpd