Настройка локального сервера
Настройка многосайтного локального сервера для apache в ubuntu может быть несколькими способами.
- Подпапки localhost. например http://localhost/mysite1 . нужно отредактировать в корне друпала файл .htaccess переменную на RewriteBase /site1 . сайт размещается в /var/www/html/site1
- в папке пользователя public_html (модуль userdir). Например, http://localhost/~username . сайт размещается в /home/username/public_html
- если есть домен то качестве поддомена http://drupal9.domename.ru . сайт размещается в /var/www/drupal9domenameru
- наверно самый правильный способ. виртуальные домены:
VirtualHost *:80
ServerAdmin sargath@test.com
VirtualDocumentRoot "/home/sargath/Projects/%1/web"
ServerName symfony.localhost
ServerAlias *.drupal.localhost
Directory "/home/sargath/Projects/*/web"
Require all granted
AllowOverride All
/Directory
/VirtualHost>
сайты работают от пользователя www-data. для удобства чтобы работал от пользователя можно поставить mpm_itk .
Перенос данных
перенос данных состоит из 2х частей.
- Перенос БД
- Перенос папки с файлами
надо создать БД, создать пользователя, загрузить БД в БД.
USE drupal9db;
CREATE USER drupal9db@localhost IDENTIFIED BY 'passwd';
GRANT ALL privileges ON drupal9db.* TO 'drupal9db'@'localhost' IDENTIFIED BY 'passwd';
FLUSH privileges;
SOURCE ./mybaza.sql
quit
Можно попробовать восстановить с помощью drush sqlc < baza_drup8.sql . этот способ я не тестировал.
перенос можно осуществить простым копированием. если у вас апачи запущен не от пользователя то надо всем файлам и папкам дать собственника www-data.
sudo chown -R www-data:www-data drupal9
upd1: добавил 4й способ в способ настройки сервера.
Комментарии
@bsyomov , сделай, пожалуйста, ревью
Так-то ок, но это фрагментарное описание одного частного случая, по большому счёту. Как по мне, смысла в такой "документации" крайне мало.
Например, сайт может располагаться примерно где угодно. Обычно, это понятно из конфига веб сервера. Перечисление где лежит локальный сайт бесполезно. Если читающий документацию этого не знает, ему она не нужна просто - всё равно не сделает ничего.
Правильно было бы описывать методы разработки целиком, с объяснением что и зачем делается в именно такой модели, и какие у неё плюсы, и чтобы все действия были в одном контексте.
Ну и для таких описаний, нужна квалификация, чтобы во-первых хорошо понимать о чём пишешь, во-вторых иметь возможность сравнить разные решения, а не описывать восторг неофита в стиле: "вот какая штука у меня получилось, срочно награфоманить нетленный труд на эту тему". Так оно не работает, даже хуже - часто получается сборник вредных советов вместо руководства.
В данном случае, как мне кажется, тут можно сменить заголовок и оставить только то, что касается создания базы/пользователя/импорта данных - это будет полезная, в целом, информация. Остальное совершенно бесполезно.
P.S. Также, лучше учить более разумным подходам к разработке, в данном случае, хотя бы что-то вроде git clone -> composer install -> mysql db < db.sql раз уж мы тут 9 аж drupal упоминаем.
Так то что вы пишите называется документация на другую тему и ее можно добавить в документацию.
Я намеренно подробно не описывал с тем чтобы понять какие будут высказывания.
Если будет нужда опишу подробнее.
Вариантов великое множество всего не перечислить.
А эта на какую тему? Зачем вообще это было написано? Чем и кому это должно помочь?
Вариантов организации процесса разработки, не так много, кстати. А частично описанный выше, основанный на копировании файлов, при этом, самый примитивный и устаревший. Не стоит он того, чтобы подробнее описывать.
вот ваша тема Выбираем среду для локального развёртывания сайта.
удали мою. я не обижусь. приучен прислушиваться к тем кто знает лучше меня. и напиши свою.
Это не Бориса пост, а Алексея