Lyckades över förväntan och fick till slut igång en fungerande Apache-server efter en del meckande.
Ska försöka minnas lite hur jag gjorde:
- Installerade först såklart freeBSD
- Körde "portsnap extract" och "portsnap fetch update", tror det är den ordningen man måste ha.
- installerade apache "port" (cd /usr/ports/... ) "make install clean"
Apache
Det kluriga är sedan att dels
- fixa config
- peta in lite saker i textfiler här och var
- brandväggen ipfw
Config: Det som strular är att man måste först hitta httpd.conf ( /usr/local/etc/apache22/httpd.conf )
Sen måste man se till att man kan något om Apache och hur en webserver funkar...
Det kan vara bra att göra rätt med "ServerRoot" och "Listen" till exempel. Gör man fel med ServerRoot får man problem.
Sätt till exempel:
ServerRoot /usr/local
(OBS det ska inte vara någon slash efter, eftersom den ska "byggas på")
och
Listen 127.0.0.1:80
(denna är också viktig)
ServerName 127.0.0.1.80
Nåt som också "måste" göras är:
lägg till hostnamnet ($HOST) i /etc/hosts - annars funkar det inte alls. (efter localhost)
Detta är jag inte hundra på, men det är en lite "oldskool" grej som faktiskt är bra när det funkar, och som jag använder rätt ofta annars också.
Här kommer också lite viktiga instruktioner som jag hittade nånstans:
You will need to add an enable line for Apache to your /etc/rc.conf file
apache22_enable="YES"
on FreeBSD, you need to add a kernelmodule
kldload accf_http
grep accf /boot/defaults/loader.conf
accf_data_load="NO" # Wait for data accept filter
accf_http_load="NO" # Wait for full HTTP request accept filter
add the second to /boot/loader.conf with 'YES' to enable this permenately.
När du gjort allt detta, så är det egentligen bara att hoppas du gjort rätt.
Sen kan man starta med:
apachectl -k start
( /usr/local/sbin/apachectl -k start )
Detta startar httpd, om du har tur. Kolla annars error_log (om du lyckats med ServerRoot) och vad den säger vid starten av apachectl.
Jag fick två fel, och det var de felen jag åtgärdade ovan, hostname och accf-grejen.
Ytterligare en grej jag fick åtgärda var:
(Är inte säker på att det ska behövas men...)
delen i httpd.conf som heter "FilesMatch" med tags.
Här var jag tvungen att ändra från "Deny from all" till "Allow from all".
Annars fick jag bara "you don't have permission to access / on this server".
Jag trodde först det var chmod, men det löste sig med "Allow".
Sedan måste man såklart fixa IPFW, /etc/rc.firewall och /etc/rc.conf och sånt för att släppa in trafiken till port 80 osv. Men det vet du ju redan.