Поскольку я использую переписывание URL для доступа к своему приложению Symfony2, оно прямо доступно из
http://my_application.my_domain.net
Теперь я хотел бы иметь возможность получить доступ к среде разработчика, просто используя другой порт, например:
http://my_application.my_domain.net:8081
Если Вы не хотите использовать
http://my_application.my_domain.net/index_dev.php
Это делает в значительной степени то же задание, здесь решение:
Позволив Ваш внешний IP 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
// ...
))
) {
// ...
Настроенный /etc/apache2/ports.conf
сказать Apache слушать в дополнительном порте
#...
NameVirtualHost *:80
Listen 80
NameVirtualHost *:8081
Listen 8081
#...
Просто копируйте приложения vhost (при использовании одного),
$ sudo cp /etc/apache2/sites-available/my_application \
/etc/apache2/sites-available/my_application_dev
и измените файл, на который указывает URL rewriter
<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>
Наконец активируйте новый vhost
$ sudo a2ensite my_application_dev
$ sudo service apache2 restart