Symfony2 - Apache vhost para app_dev porta diferente

1

Como estou usando a regravação de URL para acessar meu aplicativo Symfony2, ele está diretamente disponível em

http://my_application.my_domain.net

Agora eu gostaria de poder acessar o ambiente de desenvolvimento simplesmente usando uma porta diferente como:

http://my_application.my_domain.net:8081
    
por Pierre de LESPINAY 12.12.2012 / 17:01

1 resposta

4

Se você não quiser usar

http://my_application.my_domain.net/index_dev.php

Isso faz praticamente o mesmo trabalho, aqui a solução:

Depois de permitir que seu IP externo at my_application/web/app_dev.php

// ...
if (isset($_SERVER['HTTP_CLIENT_IP'])
    || isset($_SERVER['HTTP_X_FORWARDED_FOR'])
    || !in_array(@$_SERVER['REMOTE_ADDR'], array(
        'xxx.xxx.xxx.xxx', // <- your IP
        // ...
    ))
) {
// ...

Configurado /etc/apache2/ports.conf para informar ao Apache para escutar na porta adicional

#...
NameVirtualHost *:80
Listen 80
NameVirtualHost *:8081
Listen 8081
#...

Simplesmente duplique os aplicativos vhost (se você estiver usando um)

$ sudo cp /etc/apache2/sites-available/my_application \
          /etc/apache2/sites-available/my_application_dev

e altere o arquivo apontado pelo gravador de url

<VirtualHost *:8081>
    ServerName my_application.my_domain.net

    DocumentRoot "/var/www/my_application/web"
    <Directory "/var/www/my_application/web/">
        #...
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ /app_dev.php [QSA,L]
        </IfModule>
    </Directory>
</VirtualHost>

Finalmente, ative o novo vhost

$ sudo a2ensite my_application_dev
$ sudo service apache2 restart
    
por Pierre de LESPINAY 12.12.2012 / 17:01