перемещение файлов вокруг разных поддоменов - PullRequest
1 голос
/ 19 сентября 2011

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

  1. Один из их администраторов создает новый поддомен, перейдя в свою панель управления 123-reg
  2. Новая база данныхсоздается одним из их администраторов путем входа в панель управления 123-reg
  3. Они входят в центральную административную панель и заполняют форму, которая затем копирует ZIP-файл программного обеспечения в новый поддомен ираспаковывает его.
  4. Затем сценарий редактирует класс подключения к базе данных с помощью информации базы данных, предоставленной в форме.
  5. Затем сценарий проверяет подключение и создает таблицы
  6. Наконец,База данных администратора обновлена ​​новой информацией экземпляров.

Проблема, с которой я сталкиваюсь, заключается в перемещении файлов по разным поддоменам.Например, панель администратора находится на admin.website.com, и, например, новый экземпляр может быть расположен на instance.website.com, независимо от того, что я пытаюсь, я не могу получить файл для перемещения в другой поддомен ... У кого-нибудь есть решения дляэтот?Для всех, кому интересно, структура каталогов выглядит так:

  • / public_html / admin /
  • / public_html / instance /
  • / public_html / instance_2 /

и т. Д.

Ответы [ 4 ]

1 голос
/ 19 сентября 2011

Если у вас есть соответствующий доступ, вы можете использовать PHP FTP-библиотеку для перемещения файлов по FTP?

Это будет означать, что не имеет значения, если в будущем экземпляры будут на разных серверах.

0 голосов
/ 16 января 2018

Это сработало для меня:

$source = $_SERVER['DOCUMENT_ROOT']) . "/whatever/";

$target = str_replace('instance', 'instance_2', 
    $_SERVER['DOCUMENT_ROOT']) . "/whatever/";

Но оба должны существовать на одном сервере

0 голосов
/ 20 сентября 2011

Идея Гленатрона, вероятно, будет единственным способом, которым вы можете пойти сюда, поскольку (я предполагаю здесь), у вас нет разрешений SSH.Но вам может повезти, если провайдер позволит вам изменить структуру каталогов скелета, которая устанавливается при создании субдомена на панели.Возможно, вы сможете указать его на производственную кодовую базу и создать простой скрипт PHP, который позволит вам изменять настройки БД без необходимости редактировать код.Вы также можете запустить ваши запросы инициализации БД там.Я знаю, что вы хотели, чтобы он установил их автоматически, но я просто даю подсказку о возможностях языка.

Удачи!

0 голосов
/ 20 сентября 2011

Я бы использовал scp, если у вас включен SSH на обеих машинах.Например, вы можете выполнить следующую команду на целевом компьютере:

scp username@domain1.com:/public_html/ /public_html

Источник: http://www.hypexr.org/linux_scp_help.php

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