Toon posts:

[Apache] DocumentRoot doesn't exist

Pagina: 1
Acties:

Verwijderd

Topicstarter
Okee, het is geen erge fout, maar het wil natuurlijk wel zeggen dat niet alles helemaal okee is:
Als ik Apache start, krijg ik een warning dat de DocumentRoot (/var/www/html) niet bestaat. Dat klopt, die bestaat niet, want ik heb mijn DocumentRoot ingesteld als /var/www. Ik kan er maar niet uitkomen waarom ie toch de default DocumentRoot wil gebruiken? Na het starten werkt de http-server wel gewoon, met als DocumentRoot /var/www.

Ik heb in httpd.conf geen trailing slashes, de documentroot op 2 plaatsen veranderd (dus gewoon DocumentRoot en bij die andere voor die permissies oid). apache is de eigenaar van /var/www.

Mijn vraag is: wat is er mis? Ik heb verder geen last van deze fout maar toch wil ik weten waarom hij /var/www/html wil gebruiken en dan stiekem toch maar gauw overstapt op de door mij gedefinieerde directory.

httpd.conf
Redhat 8.0; Apache 2.0.40 :>

  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Mmm, raar. Je config lijkt goed.
Zou bijna zeggen dat er 2 apaches met 2 verschillende configs gestart werden. En dat de ene ermee ophoud omdat zijn documentroot niet bestaat.
Iig vind ik het wat raar dat je /var/www wilt gebruiken ipv /var/www/html, maar dat zal ook wel een gegronde reden hebben neem ik aan.

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Weet je zeker dat de apache die de foutmelding spuugt de juiste config pakt? Kijk eens wat er gebeurt als je iets overduidelijks (bijvoorbeeld de poort) verandert, om zeker te weten dat hij de goede config-file leest.

Verwijderd

Topicstarter
Ik heb bij het editen van httpd.conf om te zorgen dat hij server signature nu wel laat zien, om te kijken of hij de juiste conf file pakt, een typefout gemaakt, en nu krijg ik de error dat er een syntax error in httpd.conf zit. hijgeeft ook nog eens aan dat de conf file in kwestie /etc/http/conf/httpd.conf

dit is het dus niet zou je denken; maar voordat ik ging veranderen ging ik even kijken of hij de server signature nu wel of niet weergaf. dat deed hij _wel_ en in de conf file stond dat dat niet moest.

gisteren had ik nogal wat problemen met httpd aan de gang krijgen (command not found o_O) en toen had ik de httpd binary handmatig moeten zoeken, en die gerestart. maar nu kan hij hem wel gewoon vinden, dus schijnbaar zijn er inderdaad 2 apache's aan de gang, die allebei een andere conf file gebruiken. nu ik die httpd die hijvia path vindt run, krijg ik de fout ook niet.

het is een redhat die ik gisteren vers geinstalleerd heb, en ik heb apache niet handmatig geinstalleerd.

het probleem is nu dus opgelost, maar waarom kon hij gisteren httpd niet vinden? ik heb ondertussen niet meer gereboot. kan het komen door su? dat ik niet 'su -' gebruik maar gewoon 'su' zodat hij de environment variables niet laadt oid?

en btw, wat is de reden om /var/www/html te gebruiken ipv /var/www? /var/www lijkt me juist makkelijker zodat gewoon alles wat online moet daarin gedumpt kan worden.

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Als je su zonder '-' krijg je niet de $PATH van root, en kan ie inderdaad de binaries in /sbin en /usr/sbin enzo niet rechtstreeks vinden. De plaats van de DocumentRoot is vooral persoonlijke voorkeur :)

  • The Third Man
  • Registratie: September 2001
  • Laatst online: 11:52

The Third Man

The Third Jellyfish

Probeer eens zonder de " om het path heen, het klinkt misschien zinloos (misschien is dat het ook), maar bij mij zitten die er niet bij. Doe ook eens chmod -R 755 en chown apache:apache op die map (/var/www).

Verwijderd

Topicstarter
hmm, zo te zien is dit wat er gebeurd is:
gisteren kon hij httpd dus niet vinden (su ipv su -) en toen dacht ik hmm httpd start op bij booten, dus toen vond ik in rc1.d een K15httpd. gekeken waar die naar leidde, en wel naar /etc/rc.d/init.d/httpd. dus toen had ik die maar gestart met httpd -k restart.

nu kan hij dus wel httpd vinden in path, en als ik die start, zie ik in ps een paar entries van httpd met als parameter -f /etc/httpd/conf/httpd.conf
schijnbaar als ik die andere httpd start dat ie als ie geen -f krijgt, hij ingebouwde defaults gebruikt.

am i right? :*)

dank voor uw tijd
Pagina: 1