Онлайн переводчик http://translate.meta.ua
поменять
По-русски

Перенос сайта на WordPress Multisite c локального сервера на хостинг и обратно – тема, которую считают очень сложной, хотя ничего сложного здесь нет. Сейчас вы в этом убедитесь. Надеюсь, что статья будет полезной для начинающих разработчиков на WordPress.

Что же нам нужно сделать?

Все тоже самое, что и при переносе обычного сайта на WordPress. Нас ожидают:

У меня есть сайт на WordPress Multisite с поддоменами на локальном сервере Open Server, доступный по url адресам http://localhost/seattle и http://en.localhost/seattle, который я собираюсь перенести на хостинг с доменом https://seattle.by/wordress и поддоменом https://en.seattle/wordpress.

Тут сделаем паузу, чтобы я объяснил вам как настраиваются поддомены для того, чтобы сайт на WordPress Multisite начал работать.

На локальном сервере Open Server для того, чтобы сайт и по url с доменом, и по url с поддоменом обращался к одним и тем же файлам, в настройках Open Server во вкладке алиасы добавим алиас *.localhost => localhost

На хостинге для этого необходимо в cPanel создать поддомен en.seattle.by и в качестве корня документа указать указать /public_html

1. Перенос файлов сайта на хостинг

Копирование файлов можно сделать либо через ftp, либо через cPanel (закачать архив, а потом его распаковать), либо через консоль через ssh.

scp –rp seattle/ username@seattle.by:public_html/wordpress/
					

Консоль открыта в localhost.

seattle/ – каталог, в котором у меня установлен WordPress.

username – имя для домена seattle.by (совпадает с именем для входа через cPanel).

public_html/wordpress/ - путь от корня сайта до папки, в которую копируются файлы.

флаг r – рекурсивное копирование.

флаг p – сохраняет время модификаций файлов.

Затем нужно будет ввести пароль (как и в cPanel). При вводе его не будет видно.

2. Перенос базы данных

2.1. Экспорт базы данных

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

mysqldump –u username -p database > dbbackup.sql
					

username – имя для входа в phpMyAdmin.

database – имя базы данных.

dbbackup.sql – путь куда будет экспортирована базы данных.

Затем нужно будет ввести пароль для входа в phpMyAdmin. При вводе его не будет видно.

2.2. Изменения в базе данных

Заменяем все старые домены на новые.

http://localhost/seattle меняем на https://seattle.by/wordpress

http://en.localhost/seattle меняем на https://en.seattle.by/wordpress

Я сделаю изменения в консоли.

sed 's/http:\/\/en.localhost\/seattle/https:\/\/en.seattle.by\/wordpress/g' backup.sql > dbbackup-2.sql
					

sed 's/http:\/\/localhost\/seattle/https:\/\/seattle.by\/wordpress/g' dbbackup-2.sql > dbbackup-3.sql

dbbackup-3.sql – нужный нам бэкап базы данных.

2.3. Импорт базы данных

Импортировать базу данных на seattle.by можно через консоль или через phpMyAdmin.

Импорт dbbackup-3.sql выполним через phpMyAdmin, т.к. в пункте 2.4 снова будем использовать phpMyAdmin.

2.4. Изменения в таблицах базы данных

Укажу таблицы, в которые нужно внести изменения, то, что нужно менять, будет подчеркнуто красным.

таблица "wp_options"

таблица "wp_site"

таблица "wp_sitemeta"

таблица "wp_blogs"

таблица "wp#options"

где # – это номер блога (сайта), например, ‘_2’.

С базой данных закончили.

3. Правка файла .htaccess

В файле .htaccess (в cPanel или через ftp клиент, например, FileZilla) меняем RewriteBase. Вместо RewriteBase /seattle/ пишем RewriteBase /wordpress/, т.к. ранее WordPress был установлен в папку seattle, а сейчас он будет находиться в папке wordpress.

4. Правка файла wp-config.php

В wp-config.php изменения нужны в строках

define('DB_NAME', database);
					

define('DB_USER', 'root');

define('DB_PASSWORD', '');

define('DB_HOST', 'localhost');

define('DOMAIN_CURRENT_SITE', 'localhost');

define('PATH_CURRENT_SITE', '/seattle/');

Я дал исходный файл и думаю, что догадаться что на что здесь нужно поменять будет несложно.

Если не работает авторизация через админку в wp-config.php нужно дописать define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );

Надеюсь, что эта статья окажется полезной, ну а тем, у кого есть вопросы, предложения или советы, попрошу не пожалеть времени и написать комментарий. Спасибо!

По-английски

Transfer of web-site on WordPress Multisite c of local server on hosting and back is a theme that is considered very difficult, nothing difficult is here present although. Now you will make sure herein. I hope that the article will be useful to the beginning developers on WordPress.

What do we need to do?

All too same, what at the transfer of ordinary web-site on WordPress. We are expected:

I have a web-site on WordPress Multisite with subdomens on the local server of Open Server, accessible on url addresses http://localhost/seattle and http://en.localhost/seattle, that I gather to carry on hosting with a domen https://seattle.by/wordress and by a subdomen https://en.seattle/wordpress.

Here we will do a pause, that I explained to you as subdomens are influenced in order that a web-site on WordPress Multisite began to work.

On the local server of Open Server in order that web-site and on url with a domen, and on url with a subdomen called to the the same files, in tuning of Open Server in an inset алиасы we will add алиас *.localhost =

On hosting for this purpose it is necessary in cPanel to create a subdomen en.seattle.by and as a root of document to specify to specify /public _ html

1. Transfer of files of web-site on hosting

The printing-down of files can be done either through ftp, either through cPanel(to begin to swing an archive, and then to decompress him) or through a cantilever through ssh.

scp - rp seattle/ username@seattle.by:public html/wordpress/
					

A cantilever is open in localhost.

seattle/ is a catalogue in that for me WordPress is set.

username is the name for the domen of seattle.by(coincides with the name for an entrance through cPanel).

public html/wordpress/ is a way from the root of web-site to the folder files are copied in that.

a flag of r is a recursive printing-down.

flag of p - saves time of modifications of files.

Then it will be needed to enter a password(as well as in cPanel). It will not be visible at the input of him.

2. Transfer of database

2.1. Export of database

The export of database can be carried out by either плагином, either through phpMyAdmin or through a cantilever.

mysqldump - u username - p database 
					

username is the name for an entrance in phpMyAdmin.

database is the name of database.

dbbackup.sql is a way where will be exported databases.

Then it will be needed to enter a password for an entrance in phpMyAdmin. It will not be visible at the input of him.

2.2. Changes are in a database

We substitute all old domens by new one.

http://localhost/seattle we change on https://seattle.by/wordpress

http://en.localhost/seattle we change on https://en.seattle.by/wordpress

I will do changes in a cantilever.

sed 's/http:
					

sed 's/http:

dbbackup - 3.sql - necessary to us бэкап databases.

2.3. Import of database

To import a database on seattle.by it is possible through a cantilever or through phpMyAdmin.

Import of dbbackup - 3.sql is executable through phpMyAdmin, as in a point 2.4 again we will use phpMyAdmin.

2.4. Change in the tables of base of data

I will specify tables it is needed to make alteration in that needs to be changed will be underline red.

table of "wp _ options"

table of "wp _ site"

table of "wp _ sitemeta"

table of "wp _ blogs"

table of "wp#options"

where # is the number of blog(web-site), for example, '_ 2'.

With a database finished.

3. Correction of file .htaccess

In a file .htaccess(in cPanel or through ftp client, for example, FileZilla) we change RewriteBase. Instead of RewriteBase /seattle/ we write RewriteBase /wordpress/, as before WordPress was set in the folder of seattle, and now he will be in the folder of wordpress.

4. Correction of file of wp - config.php

In wp - config.php changes are needed in lines

define('DB _ NAME', database);
					

define('DB _ USER', 'root');

define('DB _ PASSWORD', '');

define('DB _ HOST', 'localhost');

define('DOMAIN _ CURRENT _ SITE', 'localhost');

define('PATH _ CURRENT _ SITE', '/seattle/');

I gave an initial file I think that to guess that on what it is here needed to change it will be undifficult.

If authorizing does not work through админку in wp - config.php it is needed to finish writing define('COOKIE _ DOMAIN', $_ SERVER['HTTP _ HOST'] );

I hope that this article will appear useful, well and that, who have questions, suggestions or advices, I will ask not to feel sorry time and write a comment. Thank you!