У меня есть клиент, который хочет, чтобы я обновил их сайт на Drupal. Я никогда не делал этого раньше, и я хочу работать над этим с моей локальной машины на случай, если что-то пойдет не так. Я понятия не имею, с чего начать!
Прежде всего, как мне получить доступ к файлам сайта моего клиента, чтобы я мог получить их на свой компьютер? Я попытался ввести информацию, которую клиент дал мне, в Cyberduck, но она не даст мне доступа. Есть ли другой способ получить доступ?
Кроме того, как я могу разместить его локально? У меня есть XAMPP, но я не уверен, как его использовать.
При этом я нашел несколько форумов, которые должны помочь мне настроить локальный сервер. Я просто не знаю, как получить файлы с живого сервера на мой компьютер.
Я знаю, что это проблема супер нубов, но я мог бы использовать помощь. Спасибо!
Ну, по основному вопросу, вы должны получить правильные учетные данные от вашего клиента. Там нет альтернативы, действительно: D
Пока вы это делаете, вам также понадобится копия базы данных сайта.
На вопрос «как мне разместить его локально?» Вот как бы я поступил по этому поводу.
Учитывая, что вы получили (S) учетные данные FTP, я предполагаю, что сайт не контролируется версией. Если это правильно, то это, вероятно, самое первое ты хочешь сделать. Это позволит вам отслеживать изменения, внесенные на локальном сайте, которые отличаются от рабочей версии.
git init
,.gitignore
файл в эту папку (вы можете создать свой собственный, или использовать один настроен для Drupal).git commit -am "First commit of Drupal files to repository."
Там хороший страница справки о работе с Drupal в git на drupal.org.
settings.php
или же settings.local.php
и хранить их в безопасном месте, желательно в диспетчере паролей.Изменить учетные данные базы данных в settings.php
или же settings.local.php
чтобы соответствовать учетным данным базы данных, которую вы только что создали.
(В целях безопасности и во избежание путаницы я всегда создаю локальные базы данных с другим именем, пользователем и паролем, чем у действующего сайта. Это означает, что если ваши локальные учетные данные скомпрометированы, то действующий сайт — нет, и это означает, что вы можете ‘ подключиться и изменить базу данных живого сайта случайно.)
example.local
который указывает на каталог, содержащий файл index.php
Добавьте следующую строку в файл с именем /etc/hosts
на твоем компьютере:
127.0.0.1 example.local
Проверьте, что это работает в браузере, посетив, например, http://example.local
или же http://example.local/robots.txt
,
То, как вы сможете это сделать, зависит в некоторой степени от инфраструктуры веб-хостинга вашего клиента и от того, какую версию Drupal использует ваш клиент. но в любом случае у вас будут три отдельные проблемы для внесенных вами изменений:
Изменения кода
Вам нужно будет внедрить изменения, которые вы вносите в код, обратно на сервер. В идеале вы, вероятно, сделаете это через Git, либо клонируя непосредственно в живой сайт, либо (что гораздо лучше!) Как часть автоматизированного процесса сборки. Судя по всему, вам, возможно, придется просто отправить изменения по FTP.
Будьте осторожны, чтобы не загружать ваши измененные settings.php
или же settings.local.php
файл!
Изменения содержания
Вы, вероятно, должны проверить некоторые / все ваши изменения содержимого локально, а затем воссоздать их на живом сайте. Поскольку ваш клиент мог вносить изменения в работающий сайт, пока вы работали, вы не можете рисковать импортом своей локальной базы данных в работающий сайт.
Изменения конфигурации
Изменения в конфигурации должны управляться в коде (т.е. как часть 1. Изменения кода выше) если это возможно. В Drupal 7, модуль Особенности обычно это лучший способ сделать это (вот ответ, который я написал с описанием рабочего процесса). Drupal 8 имеет диспетчер конфигурации. Имейте в виду, что оба эти инструмента могут быть сложны в использовании.
Ваш клиент должен предоставить вам доступ к файлам, чтобы вы могли поместить их в htdocs на XAMPP, затем вам нужна база данных (также предоставляемая клиентом), запустить XAMPP, создать новую базу данных на localhost/phpMyAdmin
и импортировать базу данных сайта. На код проекта перейдите по ссылке sites/default/settings
и измените настройки БД на ваши локальные настройки. Тогда вы можете перейти к localhost/{your-proyect}
и это должно работать.