WordPress 다중 도메인화!!
13087 단어 MySQLwordpress 환경 이전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
고생하셨습니다.
비록 지금은 무사하지만, 나는 이 방법이 틀림없이 사도라고 생각한다
Reference
이 문제에 관하여(WordPress 다중 도메인화!!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sand_bash/items/9127864dd5e8efc7b0dc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
注: 以下の手順はシングルインストールの WordPress 向けのものです。WordPress マルチサイトをお使いの場合は、データベースを手動で編集する必要があります。
「既存のネットワークがあります、ネットワークのデータベースのテーブルを空にするか削除してください。」
「既存のネットワークがあります、ネットワークのデータベースのテーブルを空にするか削除してください。」 となった場合は以下のレコードを削除する
*_blogs, *_registration_log, *_site, *_sitemeta, *_blogs_versions, *_signups (例: drop table wp_blogs;)
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>
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 |
+---------+---------+------------------+------+---------------------+---------------------+--------+----------+--------+------+---------+---------+
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;
# mysqldump --all-databases --events -u root -p > /root/all_dump.20150613
# mysqldump --databases <wordpressで使用しているdb名> -u root -p > /root/wp_dump.20150613
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>
Reference
이 문제에 관하여(WordPress 다중 도메인화!!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sand_bash/items/9127864dd5e8efc7b0dc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)