Как управлять различными средами на одном сервере?

Я немного новичок в этом, так что извините за мое невежество.

Я работаю над веб-приложением, и у меня есть 4 среды; разработка, тестирование, постановка и производство. и у меня есть только 1 сервер.

Я хотел бы знать, каков наилучший способ управления этими 3 средами на 1 сервере, который, я думаю, должен быть следующим:
— Продукция может быть доступна каждому
— тестирование и постановка должны быть доступны только определенным пользователям.

Так как вы, ребята, управляете этими средами?

Я думал о разрешении из списка ips на моих виртуальных хостах, но у пользователей может не быть статического IP-адреса.
Любое предложение?

1

Решение

Если у вас есть четыре разных среды, вам нужно будет настроить четыре разных экземпляра вашего приложения — так как вы не всегда будете иметь один и тот же код, работающий в процессе разработки, тестирования, подготовки и производства.

С помощью Apache вы можете использовать виртуальные хосты, основанные на именах, для настройки поддоменов и указания их на каждую среду. Если у вас есть панель управления на сервере, она должна обрабатывать создание поддоменов для вас. Если вам нужен попробуйте Vesta CP — это бесплатно.

Вы можете использовать код и конфигурацию в своем приложении или директивы безопасности на сервере для управления доступом к различным средам. Один из распространенных способов сделать это — использовать доверенные IP-адреса, но будьте осторожны — вы можете столкнуться с проблемами безопасности, доверяя этому полю — убедитесь, что вы очень осторожно доверяете (или просто не доверяете) значению X-Forwarded. -Для заголовка (используется прокси). Этот веб-сайт нарушил доступ к среде разработки, сделав именно это (google: анатомия атаки, из-за которой я взломал stackoverflow, я не могу больше публиковать ссылки).

Если вы используете платформу приложений, такую ​​как symfony2, вы обнаружите, что ее контроль над средами и межсетевыми экранами действительно может стать своим в этих сценариях.

Вот документация для освоения и создания сред: http://symfony.com/doc/current/cookbook/configuration/environments.html

А вот ссылка на их рецепты безопасности: http://symfony.com/doc/current/cookbook/security/index.html

Используя документацию, вы сможете создавать конфигурации безопасности для конкретной среды.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]