스마일서브 iwinv 워드프레스 호스팅 wp 없애는 방법

iwinv 에서 wp 제거하기

iwinv 에서 워드프레스를 설치하면 원하는 도메인 아래에 wp 라는 디렉토리가 설치되고 그 안에 워드프레스 파일들이 들어간다. 그리고 접속도 도메인명에 /wp 가 붙게 된다. 즉 아래 사이트의 경우

https://smallwiki.iwinv.net/wp

로 접속해야 한다. 물론 메타태그를 이용해서 https://smallwiki.iwinv.net/wp 으로 접속하면 바로 https://smallwiki.iwinv.net 으로 이동하도록 할 수 있지만 wp 라는 이름을 없애는 것이 좋다.

iwinv 에서 설치한 워드프레스 주소에서 wp를 없애는 방법은 다음과 같다.

워드프레스 관리자 페이지(ex – http://mydomain.com/wp/admin)로 들어간 후 [설정]에서 워드프레스 주소와 사이트 주소를 wp가 빠진 주소를 변경한다. 둘 다 변경한다. 예전에는 루트에 워드프레스가 설치되지 않도록 보완설정이 되어 있었지만 지금은 별 의미가 없어 그 설정은 빠진 상태다. 루트로 워드프레스 디렉토리를 모두 이동할 예정이다.

http://mydomain.com/wp -> http://mydomain.com

아래로 내려와 [변경사항 저장하기]를 누른다. 설정내용이 변경되었다. 이제 이상한 모습으로 페이지가 바뀔 것이다.

ftp 프로그램을 실행시켜 자신의 워드프레스 사이트에 접속한다. 무료 FTP 프로그램으로 많이 사용되는 것이 filezilla 이다. 이것을 사용하여 진행하였으나 어느 FTP 프로그램을 사용해도 무방하다.

워드프레스 루트에 있는 wp 디렉토리에 있는 모든 파일을 루트로 옮긴다. iwinv 를 사용하다고 가정하고 iwinv 웹호스팅의 루트는 /public_html 이다. 다른 웹호스팅의 경우 /wordpress, /www 등 이름이 다를 수 있다.

/public_html/wp 디렉토리에 있는 모든 파일과 폴더를 모두 /public_html 로 옮긴다. 이후 wp 디렉토리는 빈 상태가 될 것이고, 빈 디렉토리 wp 를 지워준다.

참고로 limits 는 백업 관련되어 사용되는 디렉토리로 지금은 상관할 필요가 없다. 나중에 사이트를 전체 백업할 때 이곳에 데이터가 저장된다. 이에 관해서는 별도로 iwinv 사이트에서 알아보기 바란다. 사이트 자체 백업 기능을 사용하지 않고 있어서 필자도 잘 모르고, 현재로서는 굳이 알아야겠다는 마음이 그리 들지 않는다.

잘 이동되었으면 다음과 같은 디렉토리 구조가 만들어졌을 것이다.

이전과 달리진 디렉토리 구조

이대로는 제대로 된 페이지가 보이면 아무 문제없이 넘어가면 된다. 그런데 몇가지 문제가 발생한다. 그래서 수정할 부분이 몇군데 있다.

.htaccess 파일 수정하여 wp 제거

모든 파일을 옮겼다면 .htaccess 파일도 옮겨졌을 것이다. /public_html/wp 에 있던 파일이 /public_html 로 옮겨졌는지 확인 한 후 내용을 수정한다. 안에 있는 모든 내용중 /wp를 지워준다. 편의상 wp 부분을 강조표시한다.

filezilla 를 사용한다면 편집하고조 하는 파일 위에서 마우스 우클릭 하여 바로 편집이 가능하다. 편집 후 저장하면 자동으로 바뀐 부분이 사이트에 반영된다.


# BEGIN WordPress
# “WordPress에서 시작”과 “WordPress에서 끝” 사이의 지시(줄)은
# 동적으로 생성하고, 워드프레스 필터를 통해서만 수정해야 합니다.
# 이들 표지 사이의 지시를 변경하면 덮어쓸 것입니다.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /wp/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . wp/index.php [L]
</IfModule>

# END WordPress

위의 원본과 아래 수정된 내용이다. 나머지는 그대로 둔다.


# BEGIN WordPress
# “WordPress에서 시작”과 “WordPress에서 끝” 사이의 지시(줄)은
# 동적으로 생성하고, 워드프레스 필터를 통해서만 수정해야 합니다.
# 이들 표지 사이의 지시를 변경하면 덮어쓸 것입니다.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

삭제했다.

다음은 index.php 파일을 열어서 내용을 수정한다.

마찬가지로 filezilla 를 사용하면 편리하다. 이미 위에서 설정한 것이 있어서 이 부분은 이미 변경되어 있을 것이다. 만약 변경되어 있지 않다면 다음과 같이 wp를 삭제하여 수정해준다.

‘/wp/wp-blog-header.php’ 를 ‘/wp-blog-header.php’ 로 수정한다.

위에서 제대로 주소를 넣었으면 아래 내용은 건드릴 필요가 있다. 하지만 뭔가 주소가 제대로 들어가지 않았을 때 여전히 접속이 잘 되지 않고 깨진 상태의 글자들이 나오게 된다. 이때 다음과 같이 설정을 변경해준다.

A 또는 B 를 선택하여 수행한다. 이때 가능하면 A보다는 B를 추천한다.



A. wp-config.php 수정

파일을 열고 두번째 줄, 즉 <?php 아래 줄에 아래 두 줄을 추가한다.

define(‘WP_HOME’, ‘자신의 도메인 주소’);
define(‘WP_SITEURL’, ‘자신의 도메인 주소’);

자신의 도메인 주소가 http://mydomain.com 이라면

define(‘WP_HOME’, ‘http://mydomain.com’);
define(‘WP_SITEURL’, ‘http://mydomain.com’);

이 된다. 이 경우 워드프레스 설정에서 다시 주소 변경이 되지 않는다. 이 방법보다는 아래 방법을 추천한다.

B. 테마의 function.php 수정

사용하고 있는 테마 폴더 안에 있는 function.php 를 수정한다.



테마는 public_html/wp-content/themes/ 아래에 설치되어 있다. 현재 화면에 보여진 에제에서 설치된 테마는 2021 (이공이일)로 올해 나온 기본 테마이다. 테마가 많이 설치되어 있다면 여러개의 테마폴더가 보여질 것이고, 그 중 자신이 지금 사용하고 있는 이름의 폴더로 들어가서 그 안에서 function.php 파일을 편집한다.

편집기에서 맨 아래에 다음 두 줄을 추가한다. 물론 도메인 이름은 자신의 도메인 이름으로 변경한다.

update_option(‘siteurl’, ‘http://mydomain.com’);
update_option(‘home’, ‘http://mydomain.com’);

wp 가 빠진 주소로 접속하면 잘 접속이 된다. 이후

function.php 에서 위 두 줄을 다시 제거한다. 위 두줄은 siteurl 과 home url 을 변경하기 위한 명령으로 매번 접속할 때마다 할 필요가 없다. 한번만 변경하면 끝이다. 즉, function.php 는 한번만 실행하면 다음부터는 다시 실행할 필요가 없다. 그러므로 위 두줄은 접속이 정상적으로 이루어지는지 확인 한 후 다시 삭제해준다.



Categories IT

Leave a Comment