WordPress 다중 도메인화!!

이 기사는?


이것은 다중 도메인화된 Wordpress의 도메인 이름(URL) 변경에 대해 매우 고민하는 증거이다

계기


다중화된 Wordpress에서 이동하는 첫 번째 블로그의 도메인 이름은 IP입니다. 개의치 마십시오.
그래도 화가 나서 변경하려면 덧붙인 그림처럼 회색이어서 변경할 수 없습니다.

제가 알아봤어요.
위 페이지에서
注: 以下の手順はシングルインストールの WordPress 向けのものです。WordPress マルチサイトをお使いの場合は、データベースを手動で編集する必要があります。
진짜예요?몰라.더 크게 썼으면 좋겠어요.ω・‘)
안 되는 기초 위에서 다중 도메인 → 단일화, URL 변경 → 다시 다중 도메인화를 시도하여 아래의 표를 확인하였다.
「既存のネットワークがあります、ネットワークのデータベースのテーブルを空にするか削除してください。」
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?Wordpress
조사해 보았다
「既存のネットワークがあります、ネットワークのデータベースのテーブルを空にするか削除してください。」 となった場合は以下のレコードを削除する
*_blogs, *_registration_log, *_site, *_sitemeta, *_blogs_versions, *_signups (例: drop table wp_blogs;)
있다.
네.보아하니 상술한 표를 삭제하면 될 것 같다.

드문 기회인 만큼 기록을 삭제하지 않고 DB 수정으로 넘기기로 했다.


그 전에 관련 표 조사.
http://www.doya-doya.com/word-press/2011/11/22/8274#c2
응응, "domain"이라는 열에 사이트의 도메인 이름이 쓰여 있는 것 같은데...
mysql> USE information_schema;
mysql> select table_name, column_name from information_schema.columns where column_name like '%domain';
+---------------+-------------+
| table_name    | column_name |
+---------------+-------------+
| wp_blogs      | domain      |
| wp_signups    | domain      |
| wp_site       | domain      |
+---------------+-------------+
6 rows in set (0.01 sec)

mysql> 
위의 표의 내용을 살펴보았는데, 그 안에는 두 개의 다중 도메인화된 URL이 있다.

mysql>USE <wordpressで使用しているdb> ;
mysql> SELECT * FROM wp_blogs ;
+---------+---------+------------------+------+---------------------+---------------------+--------+----------+--------+------+---------+---------+
| blog_id | site_id | domain           | path | registered          | last_updated        | public | archived | mature | spam | deleted | lang_id |
+---------+---------+------------------+------+---------------------+---------------------+--------+----------+--------+------+---------+---------+
|       1 |       1 | <変更前のIP>     | /     | 2015-03-23 03:24:16 | 2015-06-12 19:47:29 |      1 |        0 |      0 |    0 |       0 |       0 |
|       2 |       1 | test.example.com | /    | 2015-03-30 06:24:39 | 2015-06-12 19:46:18 |      1 |        0 |      0 |    0 |       0 |       0 |
+---------+---------+------------------+------+---------------------+---------------------+--------+----------+--------+------+---------+---------+
왠지'domain'열에 있는 IP를 도메인 이름으로 바꾸면 갈 수 있을 것 같아...!!
따라서 "wp_blogs", "wp_signups", "wp_site"표의 "domain"열을 바꾸기로 했습니다.

그 전에 백업해.


반절이 편리하도록 책상과 함께 복사하다.
mysql>CREATE TABLE wp_blogs_bk LIKE wp_blogs ;
mysql>INSERT INFTO wp_blogs_bk SELECT * FROM wp_blogs;
mysql>
mysql>CREATE TABLE wp_blogs_bk LIKE wp_blogs ;
mysql>INSERT INFTO wp_blogs_bk SELECT * FROM wp_blogs;
mysql>
mysql>CREATE TABLE wp_blogs_bk LIKE wp_blogs ;
mysql>INSERT INFTO wp_blogs_bk SELECT * FROM wp_blogs;
신중히 보아도dump를 얻었다.
# mysqldump --all-databases --events -u root -p > /root/all_dump.20150613
# mysqldump --databases <wordpressで使用しているdb名> -u root -p > /root/wp_dump.20150613

도메인 이름을 수정합니다.


하나하나 조사하면서 하면 유석을 토할 수 있기 때문에 스승님께서 가르쳐 주신 기술로 UPDATE문을 정리했습니다.

mysql> SET sql_mode='PIPES_AS_CONCAT' ;
mysql> SELECT 'UPDATE ' || TABLE_SCHEMA ||'.' || TABLE_NAME || ' SET domain = \'<変更したいドメイン名>\'' || ' WHERE domain = \'<変更前のドメイン名>\' ;' FROM information_schema.columns WHERE column_name like '%domain' AND TABLE_NAME NOT LIKE '%_bk';
+----------------------------------------------------------------------------------------------------------------------------------+
| 'UPDATE ' || TABLE_SCHEMA ||'.' || TABLE_NAME || ' SET domain = \'<変更したいドメイン名>\'' || ' WHERE domain = \'<変更前のドメイン名>\' ;' |
+----------------------------------------------------------------------------------------------------------------------------------+
| UPDATE <wordpressで使用しているdb>.wp_blogs SET domain = '<変更したいドメイン名>' WHERE domain = '<変更前のドメイン名>' ;             |
| UPDATE <wordpressで使用しているdb>.wp_signups SET domain = '<変更したいドメイン名>' WHERE domain = '<変更前のドメイン名>' ;           |
| UPDATE <wordpressで使用しているdb>.wp_site SET domain = '<変更したいドメイン名>' WHERE domain = '<変更前のドメイン名>' ;              |
+----------------------------------------------------------------------------------------------------------------------------------+
3 rows in set (0.01 sec)
mysql> 
완료된 UPDATE 문구를 콘솔에서 직접 재생합니다.

wp-config.php의 수정.


이후 다음 사이트를 참고하여wp-config.php를 수정하면 순조롭게 완성할 수 있다.
http://www.doya-doya.com/word-press/2011/11/22/8274#c2
http://snickerjp.blogspot.jp/2014/01/WordPress-MultiSite-Migration.html
http://seihiguchi.com/2012/10/moving-wordpress-multisite/
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?Wordpress
http://wpdocs.osdn.jp/%E3%82%B5%E3%82%A4%E3%83%88_URL_%E3%81%AE%E5%A4%89%E6%9B%B4#wp-config.php_.E3.81.AE.E7.B7.A8.E9.9B.86
고생하셨습니다.
비록 지금은 무사하지만, 나는 이 방법이 틀림없이 사도라고 생각한다

좋은 웹페이지 즐겨찾기