
Na forach nieustannie pojawiają sie pytania o publikację strony we frameworku Symfony. A tymczasem wystarczy przemianować katalog 'web' projektu Symfony na 'public_html':

oraz dodać do pliku 'ProjectConfiguration.class.php' w '/config' kod:
$this->setWebDir($this->getRootDir().'/public_html');
Następnie po wejściu na ftp należy wszystkie widoczne wyżej katalogi i pliki Symfony przekopiować powyżej katalogu '/public_html' na serwerze:

Na końcu jeśli mamy dostęp do SSH czyścimy cache komendą:
php symfony cc
Jeśli nie mamy dostepu do SSH to wystarczy usunąć wszystko z katalogu '/cache'.
Czasem jednak nie mamy możliwości skopiowania plików Symfony powyżej katalogu '/public_html' na serwerze. Wówczas jedną z opcji jest zastosowanie sposobu z tej strony: http://blog.szalega.pl/3/instalacja-symfony-w-homepl Jednak sposób ten wymaga modyfikacji pliku sfWebRequest.class.php z biblioteki Symfony (z uwagi na dodawanie 'web' do linków po stronie panelu administracyjnego). A co w sytuacji gdy wyjdzie nowa wersja Symfony i zechcemy uaktualnić nasz projekt ? Trzeba będzie powtórzyć czynności. Jest na szczęście lepszy sposób.
Tworzymy w katalogu głównym katalog '/sf_project' i przenosimy do niego wszystkie pliki i katalogi projektu Symfony z wyjątkiem katalogu '/web', pliki i katalogi z '/web' przenosimy do katalogu głównego, a katalog '/web' usuwamy. W plikach index.php, frontend_dev.php, admin_dev.php, admin.php znajdujących się teraz w głównym katalogu zmieniamy kod:
require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');
na:
require_once(dirname(__FILE__).'/sf_project/config/ProjectConfiguration.class.php');
wystarczy wówczas utworzyć w katalogu '/sf_project' plik .htaccess o treści uniemożliwiającej wejście z przeglądarki do tego katalogu:
Deny from all
Następnie należy przekopiować pliki i katalogi Symfony do katalogu '/public_html' na serwerze ftp:

dodaniem do pliku 'ProjectConfiguration.class.php' w '/httpd/PROJEKT/config' kodu:
$this->setWebDir($this->getRootDir().'/public_html');


