Как переместить локальный сайт, созданный django, в другую машину?

Я попытался найти решение для моего запроса, но не повезло. Я сделал сайт, используя django на своей локальной машине. Теперь я хочу установить тот же сайт, созданный django, на другой машине. MySQL - это база данных, которую я использую. Как переместить локальный сайт django в другую машину? Если этот вопрос уже обсуждался, мои извинения.

Ответ 1

Чтобы настроить тот же сайт Django на другой машине, вы можете просто скопировать код. Когда вы попытаетесь запустить его, вы получите ошибки, если что-то не настроено правильно, что вы можете решить один за другим. Несколько ошибок, которые вы, вероятно, получите, следующие:

  • Убедитесь, что Python установлен в новом окне
  • Убедитесь, что установлены Django и любые другие зависимости
  • Вам нужно будет установить MySQL и настроить базу данных на новой машине
    • сведения о базе данных (имя, пользователь, пароль) будут указаны в файле настроек проекта .py.
    • Если хост базы данных не имеет значения localhost или 127.0.0.1, вам нужно подумать о том, куда поместить новую базу данных
  • Убедитесь, что вы настроили URL-адрес, который указывает на новое поле, если только он не предназначен для разработки (в этом случае вы можете использовать Django, встроенный в dev-сервер через manage.py runserver)
  • Убедитесь, что apache/ваш сервер настроен правильно.

Все эти шаги должны просто повторять то, что вы делали на старой машине.

Если у вас есть машина "dev" и "производственная" машина, вам следует рассмотреть решения развертывания, которые автоматизируют большую часть этого процесса. Вы также должны поместить код в контроль версий, если он еще не был (Git, mercurial, subversion), чтобы вы могли управлять изменениями источника из любого местоположения.

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

Ответ 2

Это называется "развертывание". Есть много способов сделать это, некоторые из которых описаны в http://docs.djangoproject.com/en/dev/howto/deployment/. Там также http://djangobook.com/en/2.0/chapter12/, который дает более общую информацию. Ваш путь будет зависеть от того, что поддерживает ваш сервер.

Вы должны использовать их как отправные точки, а затем сообщать о проблемах здесь, чтобы мы могли их исправить.

Обновление: Фактические шаги, необходимые для развертывания вашего приложения (например, его запуск на реальном сервере), зависят от вашего поставщика услуг. Шаги в основном предназначены для настройки вашего веб-сервера для обслуживания приложения, настройки базы данных с правильными значениями и запуска веб-сервера. Фактические действия, связанные с этим, зависят от вашего сервера (какой внешний веб-сервер, который он использует, как его редактировать, он совместно используется или VPS, у вас есть доступ к оболочке и т.д.). Вот пример того, как вы это сделаете в webfaction (популярном хостинг-провайдере python).

http://docs.webfaction.com/software/django/getting-started.html