Blog categories

Comments

[WordPress] 다중 사이트 기능 이용

[WordPress] 다중 사이트 기능 이용

기본적으로 WordPress를 설치하게 되면 하나의 사이트에 대한 WordPress가 설치됩니다. 하지만 WordPress 3.5 버전부터는 Multi-site 기능이 기본 Core 추가되어 별도의 설치 없이 설정 변경만으로 다중 사이트 운용이 가능합니다.

* 모든 과정을 진행하기 앞서 미리 설치한 WordPress 사이트의 DB와 내용을 백업 하신 이후 진행하시길 바랍니다.

다중 사이트를 이용하기 위해서는 Network 라는 기능을 사용하게 되는데 wp-config.php 파일과 .htaccess 파일을 수정해야 합니다. 이때 Sub-domain(domain-based network)을 사용할 것인지 Sub-directory(path-based network)를 사용할 것인지에 따라 설정 값이 달라집니다.

Sub-doamin / Sub-directory 란?

Sub-domain (domain-based network)

Subfolder 방식으로도 불리며 사이트 접속 시 아래와 같이 경로 기반의 URL을 사용하는 경우를 뜻합니다.

http://subsite.example.com

Sub-directory (path-based network)

Subfolder 방식으로도 불리며 사이트 접속 시 아래와 같이 경로 기반의 URL을 사용하는 경우를 뜻합니다.

http://example.com/subsite

Step 1: Multisite 기능 켜기

wp-config.php 파일 하단에 /* That’s all, stop editing! Happy blogging. */ 이후 부분에 아래와 같이 작성합니다.

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

admin 페이지를 새로고침 하면 Settings>Network Setup 페이지를 참고하여 설치를 진행합니다.

Step 2: Installing a Network

wp-config.php 파일에 아래와 같이 추가합니다.

define('MULTISITE', true);
define('DOMAIN_CURRENT_SITE', 'dbserver.korea.ac.kr');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Sub-domain (domain-based network)

wp-config.php 파일에 아래를 추가합니다.

define('SUBDOMAIN_INSTALL', true);

WordPress 3.5 이상 버전에서 .htaccess 파일을 아래와 같이 수정합니다.

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
 
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
 
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ wp/$1 [L]
RewriteRule . index.php [L]
Sub-directory (path-based network)

wp-config.php 파일에 아래를 추가합니다.

define('SUBDOMAIN_INSTALL', false);

WordPress 3.5 이상 버전에서 .htaccess 파일을 아래와 같이 수정합니다. 기존에 3.5 하위 버전에서 업그레이드를 진행한 경우 이전 버전을 위한 .htaccess 형태를 사용해야 합니다.

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
 
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
 
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

div#stuning-header .dfd-stuning-header-bg-container {background-color: #3f3f3f;background-size: cover;background-position: top center;background-attachment: initial;background-repeat: no-repeat;}#stuning-header div.page-title-inner {min-height: 350px;}