Portál AbcLinuxu, 7. května 2025 12:24

Dotaz: PHP + FastCGI + Virtualhosty se subdoménami

11.4.2009 19:02 nick
PHP + FastCGI + Virtualhosty se subdoménami
Přečteno: 426×
Odpovědět | Admin

Aktuálně mám rozeběhnutý takový menší webhosting (pro známé, ale stejně bych to potreboval nějak zabezpečit), pomocí mod_rewrite mám zařízené subdomény na /var/www/domena.xx/subdomena/. Teď se pokouším přidat podporu PHP přes FastCGI (kvůli oprávněním, aby mohlo PHP běžet s oprávněními vlastníka skriptu), ale nějak nemůžu přijít na to, jak to zprovoznit tak, aby to běželo stejne jako když je php modulem apache... bohužel se mi nic na tohle nic vygooglit nepodařilo...

Mám tím na mysli, že tak jak to mám teď, php skripty musí být v /cgi-bin/, ale já bych to potřeboval aby to šlo ze stejného adresáře, jako jsou html stránky.

Napadlo mě ze bych mohl cgi-bin změnit na kořenový adresář webu, ale pak je tam zase problém s těmi subdoménami.

Ještě přikládám můj /etc/apache2/sites-available/domena.xx :

<VirtualHost *:80>
ServerAdmin admin@domena.xx
ServerName domena.xx
ServerAlias *.domena.xx
DocumentRoot /var/www/domena.xx
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.*).domena.xx
RewriteRule ^(.*)$ /%1/$1 [L]
RewriteCond %{HTTP_HOST} ^domena.xx
RewriteRule ^(.*)$ /_/$1 [L]

ErrorLog /var/www/domena.xx/error.log
LogLevel warn
#CustomLog /var/www/domena.xx/access.log combined
</VirtualHost>

Jsem v tomhle ohledu bezradný, tak doufám že mi poradíte a předem díky.

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.4.2009 11:38 nick
Rozbalit Rozbalit vše Re: PHP + FastCGI + Virtualhosty se subdoménami
Odpovědět | | Sbalit | Link | Blokovat | Admin

Ještě jsem zapoměl doplnit tento soubor pro použití s FastCGI...

<VirtualHost *:80>
 ServerAdmin admin@domena.xx
 ServerName domena.xx
 ServerAlias *.domena.xx
 DocumentRoot /var/www/domena.xx
 RewriteEngine On
 RewriteCond %{HTTP_HOST} ^(.*).domena.xx
 RewriteRule ^(.*)$ /%1/$1 [L]
 RewriteCond %{HTTP_HOST} ^domena.xx
 RewriteRule ^(.*)$ /_/$1 [L]
 
 ErrorLog /var/www/domena.xx/error.log
 LogLevel warn
 #CustomLog /var/www/domena.xx/access.log combined

 AddType application/fast-php .php
 Action application/fast-php /cgi-bin/php-fast
 #ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
 ScriptAlias / /usr/lib/cgi-bin/
 <Directory "/usr/lib/cgi-bin">
  SetHandler fastcgi-script
  AllowOverride None
  Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
  Order allow,deny
  Allow from all
 </Directory>
</VirtualHost>

Problém je v tom, že tohle php zprovozní v cgi-bin, ale já potřebuju, aby šlo php skripty spouštět v jakékoli složce webu...
Pokud dám php jako modul apache, všechno jede správně, ale potřeboval bych aby php jelo s oprávněním vlastníka skriptu...
Doufám že jsem to zformuloval správně, klidne odpovězte i pokud si nejste jistí, aktuálně mi je jakákoli rada drahá...
Pokud víte o lepším řešení jak by php mohlo pracovat s oprávněním vlastníka skriptu, taky budu rád pokud se podělíte...
Doufám že tohle upřesnění pomůže, a najde se tady nějaký mistr který by poradil... :-)

14.4.2009 13:03 nick
Rozbalit Rozbalit vše Re: PHP + FastCGI + Virtualhosty se subdoménami

No nic, nevadí, už se mi to podařilo vyřešit bez FastCGI.
Použil jsem konstrukci

php_admin_value open_basedir "/var/www/domena.xx"

Má to jedinou chybu: soubory vytvořené (a tedy i uploadované) pomocí php se nezapočítají do uživatelské kvóty, protože vlastníkem souborů bude www-data. To ale zatím vyřeším CRONem, aby se každou hodinu všechny soubory domény přivlastňovaly uživateli domény...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.