Apache+PHP+suPHP/suexec start niet

Pagina: 1
Acties:
  • 163 views sinds 30-01-2008
  • Reageer

  • roland-d
  • Registratie: April 2006
  • Laatst online: 20-01 22:41
Goedemorgen allemaal,

Inmiddels ben ik 3 dagen verder en geen steek verder gekomen :'( .

Wat wil ik?
Ik wil dat de vhosts draaien onder de gebruiker van het vhost account in plaats van de user nobody:nobody waar Apache onder draait.

Wat heb ik geprobeerd?
Er draait op de VPS een WHM installatie en daarmee heb ik Apache en PHP laten maken met verschillende mogelijkheden.
Ik heb de optie DSO gekozen, die krijg ik inderdaad aan de praat maar dan draait alles onder de user nobody.
Ik heb de optie suPHP gekozen en dan krijg ik een download scherm te zien. In de php.conf die automatisch gemaakt wordt staat:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# SuPHP configuration for PHP5
LoadModule suphp_module modules/mod_suphp.so
suPHP_Engine on
AddType application/x-httpd-php5 .php5 .php4 .php .php3 .php2 .phtml
<Directory />
    suPHP_AddHandler application/x-httpd-php5
</Directory>
<Files *.php5>
    suPHP_AddHandler application/x-httpd-php5
</Files>
<Files *.php4>
    suPHP_AddHandler application/x-httpd-php5
</Files>
<Files *.php>
    suPHP_AddHandler application/x-httpd-php5
</Files>
<Files *.php3>
    suPHP_AddHandler application/x-httpd-php5
</Files>
<Files *.php2>
    suPHP_AddHandler application/x-httpd-php5
</Files>
<Files *.phtml>
    suPHP_AddHandler application/x-httpd-php5
</Files>

# End of autogenerated PHP configuration.

In httpd.conf heb ik zelf het volgende toegevoegd:
code:
1
AddHandler application/x-httpd-php .php


Verder heb ik ook de optie CGI met suexec gekozen maar daarbij precies hetzelfde probleem als hiervoor beschreven.

Hoe nu verder?
Eerlijk gezegd. Geen idee |:( Vandaar dat ik hier ben _/-\o_

Is er een combinatie die de voorkeur heeft en hoe ga ik die aan de praat krijgen? Alvast dank voor de hulp in deze donkere dagen.

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
PHP als CGI is geen goed idee (lage performance). Dus moet je FastCGI gebruiken. Helaas is dat met Apache ook weer niet zo simpel.

Maar het vhost account zelf gebruiken is toch ook niet handig?
Je hebt per vhost eigenlijk twee accounts nodig, een voor de beheerder en een voor PHP.

[ Voor 37% gewijzigd door Olaf van der Spek op 20-01-2008 11:49 ]


  • roland-d
  • Registratie: April 2006
  • Laatst online: 20-01 22:41
Olaf van der Spek schreef op zondag 20 januari 2008 @ 11:48:
PHP als CGI is geen goed idee (lage performance). Dus moet je FastCGI gebruiken. Helaas is dat met Apache ook weer niet zo simpel.

Maar het vhost account zelf gebruiken is toch ook niet handig?
Je hebt per vhost eigenlijk twee accounts nodig, een voor de beheerder en een voor PHP.
Olav bedankt voor je antwoord.

Misschien heb ik mezelf niet goed uitgelegd. Het is een server waar meerdere domeinen opdraaien. Voor ieder domein is er een vhost. Nu heb ik voor het eerste domein de gebruike userx. De bestanden die ik dan via FTP of SSH erop zet zijn van userx. De webserver draait nu onder user nobody en die kan de bestanden dus niet wijzigen of zelfs nieuwe uploaden omdat alle files en folders geowned zijn door userx:userx.

Nu weet ik ook niet zeker wat de "beste" oplossing is maar het lijkt me dat de webserver user dezelfde user is als degene waarmee ik via FTP/SSH bestanden op de server zet.

Groeten

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Slechts vier letter, en nog... ;)
Misschien heb ik mezelf niet goed uitgelegd. Het is een server waar meerdere domeinen opdraaien. Voor ieder domein is er een vhost. Nu heb ik voor het eerste domein de gebruike userx. De bestanden die ik dan via FTP of SSH erop zet zijn van userx. De webserver draait nu onder user nobody en die kan de bestanden dus niet wijzigen of zelfs nieuwe uploaden omdat alle files en folders geowned zijn door userx:userx.
Directories chmod 777 is iets wat vaak gedaan wordt, maar is niet ideaal.
Nu weet ik ook niet zeker wat de "beste" oplossing is maar het lijkt me dat de webserver user dezelfde user is als degene waarmee ik via FTP/SSH bestanden op de server zet.
Het kan, maar dan kan de webserver ook files schrijven die het niet hoeft te schrijven.
Maar ook dan heb je FastCGI nodig om PHP voor elke vhost onder een aparte user te draaien.