Можно ли управлять Drupal, работающим на сервере Windows, с помощью drush в Linux с помощью подключения Samba?
Я пытался настроить drush на своем рабочем столе Linux (далее называемый клиентом) для управления удаленным сайтом Drupal, работающим в Windows, с помощью XAMPP (далее называемый сервером).
Корневой каталог Drupal на удаленном сервере монтируется через Samba на клиенте в этом расположении : /path/to/remote/server1/drupal
Я использую следующий псевдоним drush:
$aliases['drupalserver1'] = array(
'root' => '/path/to/remote/server1/drupal',
#'remote-host' => 'drupalserver1.mydomain',
#'remote-user' => 'myuser',
'uri' => 'http://drupalserver1.mydomain',
'os' => 'Windows',
);
Теперь, как я понимаю, это говорит drush, что это локальная установка Drupal, а не удаленная с тех пор как я ушел, прокомментировал записи remote-host
и remote-user
.
Затем Drush считывает файл settings.php
на сервере (через монтирование samba на моем клиенте), в котором указывается drupalserver1.mydomain
(а не localhost
) и необходимые другие конфигурации.
Подключение к базе данных успешно, как и загрузка:
Site URI : http://drupalserver1.mydomain
Database driver : mysql
Database hostname : drupalserver1.mydomain
Database username : root
Database name : drupal
Database : Connected
Drupal bootstrap : Successful
Drupal user : Anonymous
Default theme : acquia_marina
Administration theme : seven
PHP configuration : /etc/php5/cli/php.ini /home/myuser/.drush/php.ini
Drush version : 5.9
Drush configuration :
Drush alias files : /home/myuser/.drush/examples_example.aliases.drushrc.php /home/myuser/.drush/myorg.aliases.drushrc.php
Drupal root : /path/to/remote/server1/drupal
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : C:\xampp\tmp
Теперь и файлы Drupal (/путь/к/удаленному/server1/drupal), и база данных mysql размещены на компьютере с Windows, поэтому использование 'os' => 'Windows'
в псевдониме имеет смысл. Я даже задаюсь вопросом, является ли эта строка даже учтено, так как remote_host
не используется.
Есть ли надежда, что конфигурация, которую я предлагаю, вообще работает?
Использование Drupal 7.
1 answers
В вашем случае, 'os' => 'Linux'
. Эта переменная указывает Drush, как выполнять такие действия, как экранирование пути к файловой системе. Как вы и предполагали, эта переменная в основном используется во время удаленных вызовов, но я полагаю, что на нее иногда можно ссылаться при построении команд, которые используются локально.
Я никогда не пытался настроить Drush так, как вы описали выше; теоретически это должно быть возможно, если вы можете подключиться к базе данных, но у вас могут возникнуть некоторые проблемы. Публиковать проблемы в очереди на устранение неполадок если вы обнаружите ошибки. PR с исправлениями будут особенно приветствоваться.