[apache] virtual hosts en php safe mode

Pagina: 1
Acties:

  • trinite_t
  • Registratie: Maart 2003
  • Laatst online: 06-02 12:23
Ik ben weer eens aan het klooien geslagen met mijn apache servertje (en dan met name met virtual hosts). Nu loop ik tegen een paar probleempjes aan.

Ten eerste, als ik virtual hosts gebruik, wil ik graag dat alleen mijn "default" hostname in zijn root dir geen php_safe_mode gebruikt. Dit deed ik altijd (met alleen maar een host) door het volgende aan toe te voegen aan mijn configuratie:
code:
1
2
3
<Directory "/home/httpd">
php_admin_flag safe_mode Off
</Directory>

Maar dit levert nu opeens syntaxfouten op.

Ten tweede loop ik er tegen aan dat elke vhost alle homdirs van mijn gebruikers host. Is er ook een methode om dat op te lossen?
Ik gebruik nu de volgende APACHE2_OPTS:
code:
1
APACHE2_OPTS="-D DEFAULT_VHOST -D USERDIR -D SSL -D SSL_DEFAULT_VHOST -D PHP4"

Voor het gebruik van Virtual hosts verwijder ik "-D DEFAULT_VHOST". En dan maak ik mijn eigen hosts aan.

The easiest way to solve a problem is just to solve it.


  • arietimmerman
  • Registratie: December 2005
  • Laatst online: 19-08-2021
code:
1
2
3
<Directory "/home/httpd">
php_admin_flag safe_mode off
</Directory>

  • trinite_t
  • Registratie: Maart 2003
  • Laatst online: 06-02 12:23
Het maakt bij mijn iet uit of ik off met of zonder hoofdletter schrijf. als ik nu apache2 -t draai, dan geeft het de volgende error:
code:
1
2
3
# apache2 -t
Syntax error on line 10 of /etc/apache2/vhosts.d/01_test_vhost.conf:
Invalid command 'php_admin_flag', perhaps mis-spelled or defined by a module not included in the server configuration

Maar ondanks deze "foutmelding" lijkt hij het wel te doen. Wat gaat er toch nog mis dat ik de foutmelding wel krijg

btw, heb ook al geprobeerd
code:
1
2
3
<IfModule mod_php.c>
php_admin_flag safe_mode Off
</IfModule>

Dit haalt de foutmelding wel weg, maar dan wordt safe mode niet uitgeschakeld in mijn root dir. Heeft de php module mss een andere naam ofzow? Ik kan de module ook niet vinden bij phpinfo();

[edit]
Ha, gevonden, het gaat wel helemaal goed als ik dit gebruik:
code:
1
2
3
<IfDefine PHP4>
    php_admin_flag safe_mode Off
</IfDefine>

Nu alleen nog het probleempje met de user directories! Weet iemand hoe dat gefixed kan worden? Ik vind het nl niet erg netjes als op "al" mijn vhosts de userdirs benaderbaar zijn.

[edit2]
Woot! werkt nu allemaal!
Het probleem bij die userdirs heb ik op de volgende manier opgelost:
In mijn httpd.conf staat dat hij de mod_userdir.c laad als de flag apache flag "USERDIR" aan staat. Dit heb ik ook zo gelaten, heb alleen gezet dat hij standaard de UserDir disabled zet.
Als ik nu een virtual host toevoeg heeft die dus geen userdirs.
Die krijgt hij pas als ik in het virtualhost gedeelte
code:
1
2
3
<IfModule mod_userdir.c>
      UserDir public_html
   </IfModule>

toevoeg. (Dit mag niet in een <Directory "blaat"> tag staan!)

Ik hoop dat dit genoeg uitlegt.

[ Voor 45% gewijzigd door trinite_t op 17-01-2006 16:04 ]

The easiest way to solve a problem is just to solve it.