2009-06-26 4 views

Antwort

1

Vom Symfony Documentation dieses config.php die in jeder App tun sollte funktionieren [Beispiel apps zeigt/backend/config/config.php]

sfConfig::add(array(
    'sf_web_dir'  => SF_ROOT_DIR.'/web/backend', 
    'sf_upload_dir' => SF_ROOT_DIR.'/web/backend'.sfConfig::get('sf_upload_dir_name'), 
)); 

Aus irgendeinem Grund, diese Methode nicht Arbeit. Wenn Sie sich alle Variablen anschauen, die in sfConfig definiert sind, werden Sie feststellen, dass Sie mehr als sf_web_dir und sf_upload_dir ändern müssen, damit die Dinge funktionieren.

Eine Option wäre, alle Variablen in sfConfig manuell zu überschreiben, die auf das Webverzeichnis innerhalb der config.php jeder Anwendung zeigen. Um eine Liste aller Variablen zu sehen, versuchen

<?php echo var_dump(sfConfig::getall()); ?> 

Die andere Option (so wie ich es vorher getan haben) wäre es in der Apache-Konfiguration zu tun. Ihre virtuelle Host-Einstellungen für Backend etwas wie

<VirtualHost *> 
    ServerName backend.dev 
    DocumentRoot "PATH_TO_SYMFONY_PROJECT/web/backend" 
    DirectoryIndex index.php 
    Alias /sf /usr/local/lib/php/data/symfony/web/sf 
    <Directory "/usr/local/lib/php/data/symfony/web/sf"> 
    AllowOverride All 
    Allow from All 
    </Directory> 
    <Directory "PATH_TO_SYMFONY_PROJECT/web/backend"> 
    AllowOverride All 
    Allow from All 
    </Directory> 
</VirtualHost> 

Dann müssen Sie kopieren backend.php aussehen würde, backend_dev.php [und möglicherweise index.php wenn Backend ist Ihre Standardumgebung] auf/web/Back-End, und in jedem dieser Dateien ändern

define('SF_ROOT_DIR', realpath(dirname(__FILE__).'/..')); 

zu

define('SF_ROOT_DIR', realpath(dirname(__FILE__).'/../..')); 

und Sie sollten gut sein. Ich bevorzuge diese Methode, aber wenn Sie keine virtuellen Hosts eingerichtet haben, haben Sie diese Option möglicherweise nicht.

+0

Das wissen Sie wahrscheinlich schon ... Ihre Symfony-Installation könnte irgendwo anders sein als "/ usr/local/lib/php/data/symfony/web/sf" – sjobe

+0

Wow, danke für die gründliche Antwort sjobe! Ich werde es ausprobieren und dann als die richtige Antwort markieren :) –

+0

Hat super funktioniert. Danke für deine Hilfe, sjobe, ich weiß es zu schätzen. –

Verwandte Themen