작성일자
카테고리 워드프레스/워드프레스 일반

최근 워드프레스 4.2 버전과 MySQL 버전과의 호환성 문제로 여러 웹호스팅 회사를 문의해보고 실제로 두 곳의 호스팅을 이용해봤는데 그 중 아이비호스팅이라는 회사의 서비스가 가장 좋았습니다. 속도도 빠르고 일부 웹호스팅에서는 메모리가 부족해 사이트가 나타나지 않던 문제도 없었습니다. 다만 두 가지 문제점이 있는데 우선 성능을 알아보고 해결 방법을 알아보겠습니다. 향후 웹호스팅을 사용할 계획이라면 아이비호스팅을 적극 추천합니다. 다른 웹호스팅 회사도 본받아야 할 것으로 생각되기에 글을 통해 올리는 것이며 필자와 이 회사와는 전혀 관계가 없습니다.


http://www.ivyro.net/html/webht/web/



이 회사의 하드디스크는 SSD입니다. PC에서나 볼 수 있는 하드디스크입니다. 메모리처럼 속도가 빠릅니다. 용량에 비해 가격이 아주 저렴합니다. 가격이 저렴하다고 해서 서버 사양이 저질이라거나 설정이 모자라거나 하지 않고 오히려 그 반대입니다. 그러면 그 사양에 대해 알아보겠습니다.



PHP 5.6 버전까지, MySQL 5.6 버전까지 지원합니다. 워드프레스가 업그레이드 되면서 여러 가지 최신 기술이나 보안이 업데이트 되고 있는데 이러한 환경이 갖춰지지 않으면 그만큼 낮은 수준의 기술이나 보안이 사용될 수 밖에 없습니다. 따라서 고급 사양의 환경은 워드프레스의 업그레이드에 맞춰져야 합니다. 여기까지는 이전에 쓴 글의 내용과 별로 다른게 없습니다. 이번 글에서 이야기 하고자 하는 것은 PHP의 설정 수준입니다. 설정이 어떻게 돼있는지 알려면 phpinfo(); 라는 함수를 사용합니다.


워드프레스가 설치된 루트에 info.php 파일을 만들고 이 파일을 열어 <?php phpinfo(); ?>라는 코드를 추가한 다음 저장합니다.  이 파일이름이 공개되면 자신의 사이트가 보안에 노출될 염려가 있으므로 다른 이름으로 하거나 확인한 후 삭제하시기 바랍니다. 간단한 파일 수정은 파일질라에서도 작업할 수 있습니다. 



파일질라에서 편집 - 설정 - 파일 편집을 클릭하면 자신의 컴퓨터에서 사용하는 편집기를 선택할 수 있습니다. 찾아보기 버튼을 클릭해 실행 파일을 클릭하면 위처럼 나타납니다. 확인을 클릭합니다.



리모트 서버 패널의 빈공간을 클릭해 마우스 우측 버튼을 클릭한 다음 "새 파일 만들기"를 선택하고 info.php 파일을 입력한 다음 저장합니다. 다시 마우스 우클릭해 새로고침을 선택하면 파일이 나타납니다. 이 파일을 다시 우클릭해 보기/편집을 선택하면 설정한 편집기에 열립니다. 이곳에 위에서 말한 코드를 추가하고 저장합니다. 파일질라에 돌아오면 저장할 것인지 묻는 팝업창이 나타납니다. 확인을 클릭합니다. 이것을 잊는 수가 많으니 주의하세요.



주소란에 도메인과 슬래시, 파일이름을 입력한 다음 엔터 키를 누르면 php와 아파치 설정이 모두 나옵니다. php 버전이 보다 상세하게 나옵니다. 아마 웹호스팅 서비스 중에서 가장 높은 버전이 아닐까 생각됩니다.



php 설정에서 중요한 부분입니다.  대부분의 웹호스팅에서는 max_input_vars 옵션이 없거나 최소한의 수준인 1000입니다. 이것은 최대 변수 허용 숫자인데 워드프레스에서 메뉴가 많아질 때 속도가 느려지거나 저장이 안되는 것은 이 숫자 때문입니다. 이 회사는 10,000이라는 숫자를 제공합니다. 이것이 많아야 관리자 화면의 반응 속도가 빨라집니다. 이 설정은 php 5.3.39 버전 이후에서만 지원하므로 그 이전 버전은 아예 없습니다. 


워드프레스의 작업 속도를 높이기 위해 최대 실행 시간(max_execution_time)과 최대 입력 시간(max_input_time)등이 있는데 이들의 최대 수치가 정해져 있습니다. 이것은 .htaccess 파일에서 변경할 수 있습니다. 이 파일은 고유주소를 사용하면 워드프레스 설치 폴더에 있습니다. 이 파일을 열고 하단에 다음을 추가하면 됩니다. 독립 서버의 경우 php.ini 에서 설정을 변경할 수 있습니다.


  
<IfModule mod_php5.c>
  
php_value upload_max_filesize 100M
  
php_value post_max_size 100M
  
php_value max_execution_time 300
  
php_value max_input_time 300
 
</IfModule>


저장하고 다시 phpinfo 화면을 새로고침 하면 아래와 같이 변경됩니다.



여기서 메모리 사이즈는 변경할 수 없습니다. 웹호스팅은 공유 서버이기 때문에 하나의 서버로 여러 사람이 공유하게 됩니다. 따라서 메모리는 128 메가로 제한되는 것은 당연합니다. 하지만 독립 서버(Dedicated)의 경우  해당 변수로 검색해 변경할 수 있습니다. 하단의 upload_max_filesize는 최대 업로드 파일 사이즈인데 이것은 데이터베이스 업로드 사이즈도 결정됩니다. phpMyAdmin에서 보이는 최대 업로드 용량이 됩니다.


메모리 크기는 php가 실행되는 메모리 크기이며 컴퓨터의 메모리와는 다릅니다. 웹호스팅의 서버는 공유 서버이므로 한대의 성능 좋은 서버를 사용하므로 낮은 사양의 독립 서버보다 더 빠를 수 있습니다. 독립 서버에서 메모리는 전체 컴퓨터가 사용하는 메모리이며 예를들어 낮은 사양의 독립 서버 메모리가 2기가라면 오히려 웹호스팅보다 느릴 수도 있습니다. 클라우드 서버의 경우 메모리를 증감 시켜 사용할 수 있는데 여기서의 메모리가 php에 할당된 메모리는 아닙니다. 실제로 클라우드 서버를 운용해봤는데 2기가를 사용했더니 엄청 느려서 담당 직원은 4기가로 늘려야 한다고 하더군요.


위 메모리로 타 웹호스팅에서는 워드프레스 플러그인을 제한적으로 사용했었는데 리소스를 많이 잡아먹는 플러그인을 사용해도 거뜬이 돌아간다는 것입니다.


이 웹호스팅의 문제점이 두 가지가 있습니다. 우선 관리자 화면에서 페이지 편집 화면에 들어가면 워드프레스가 사용하는 자바스크립트 파일을 로드하는 php가 있는데 이 파일이 정지됩니다. 어떤 이유인지는 모르겠으나 구글링 해보니 해결방법은 있었습니다.



테마에서 비주얼 컴포우저를 사용하는데 관련 버튼이 나타나지 않습니다. 요소 검사해서 콘솔탭을 열어보면 상단에 load-scripts.php 파일 실행이 안되므로 자바스크립트 로드가 안되면서 비주얼 컴포우저에서 사용하는 자바스크립트도 에러가 발생합니다. 다른 웹호스팅에서는 발견할 수 없는 증상입니다. 5회에 걸쳐 새로 설치하거나 제대로 작동하는 다른 사이트의 워드프레스를 설치해봐도 같은 증상입니다. 혹시나 해서 웹호스팅을 추가로 신청해 워드프레스를 설치해보니 같은 증상입니다. 다음의 코드를 추가하니 해결됐습니다.


 74 
define( 'CONCATENATE_SCRIPTS', false );
 75 
 
 76 
/* That's all, stop editing! Happy blogging. */


wp-config.php 파일에서 위 74번 줄의 코드를 추가해주면 됩니다. 이러한 문제는 이 호스팅 회사에서 운영하는 웹방화벽으로 인한 것으로 추정되는데 호스팅 관리자 화면에서 변경할 수 있습니다.



마이페이지 - 호스팅 관리 - 웹방화벽 설정 메뉴를 클릭하고 계정 아이디를 선택한 다음 웹방화벽 중지를 선택해 웹방화벽 설정 변경 버튼을 클릭하면 됩니다. 담당자의 말로는 웹방화벽을 사용하는 것이 좋으나 워드프레스 플러그인에 따라서 방화벽과 호환이 안되는 부분이 있다고 하니 이럴 경우 해제하고 사용합니다. 제 경우 처음에는 문제가 발생했는데 웹방화벽을 동작하는 것으로 설정해도 나중에 이전에 삽입한 코드를 제거해보니 제대로 작동됐습니다.



두 번째 문제는 고유주소에 index.php가 추가됩니다. 이 웹호스팅에서는 보안을 위해 표면상 다른 프로그램이 실행되는 것처럼 설정해놨는데 이로 인해 고유주소에 코드가 추가되는 것입니다. 이를 수정하기 위해 아래의 코드를 wp-config.php 파일에 추가했더니 페이지 없음 에러가 발생합니다. 참고->


 
$_SERVER['SERVER_SOFTWARE'] = 'Apache';


이 코드를 삽입할 경우 index.php는 제거되지만 사이트에서 웹페이지가 없다는 404 에러가 발생하는데 이때는 아래의 코드를 .htaccess 파일에 추가해주면 됩니다. 사이트를 새로고침해도 같은 증상이 나오면 다른 웹브라우저에서 테스트 해보세요. 쿠키로 인한 것이니 쿠키를 제거하면 됩니다.


 
<IfModule mod_url.c>
 
CheckURL On
 
ServerEncoding UTF-8
 
</IfModule>


전반적으로 문제의 발생 원인은 웹방화벽이나 보안 프로그램으로 인한 것으로 생각되며 해결이 가능한 것이었습니다. 이런 문제를 감안하더라도 가격대비 성능은 아주 훌륭한 편입니다.


데모 사이트 : http://martian36.ivyro.net/


이 사이트에서 사용하는 테마는 The7이라는 테마입니다. 기능도 많고 웹호스팅에서 사용하기에는 부담이 되는 테마지만 로딩 속도가 빠릅니다.



현재 사용 중인 플러그인입니다. 총 18개가 사용 중인데 보안 관련 플러그인인 WordFence Security가 돌아간다는 게 신기할 정도입니다. 리소스를 많이 사용하거든요.



저작자 표시 비영리 변경 금지
신고

비밀댓글입니다

STARLIGHT

아이비 호스팅으로 워드프레스를 이용하시는 분중에. 미리보기가 안되시는 분들은 위에 포스팅이 아주 효과적입니다.

감사합니다. 영어로 검색하기 버거웠는데. ^-^ ~~

BlogIcon 홍정석

해외 호스팅 사용하다가 속도때문에 속 터져서 베누시안님 글 읽고 아이비호스팅 종량제 웹호스팅 사용중입니다.
정말 만족하고 잘 사용하고 있습니다.

BlogIcon Happist

여기 전반적인 서비스는 어떻게 보시는지요?

여기를 사용한지 얼마되지 않았는데 다른 곳에 비해서 서비스가 좋지않다는 느낌을 강하게 받습니다.
. 전문성이 많이 떨어진다는 느낌이구요. 문제 발생 시 대응이 제대로 않됩니다.
결국 구글 검색하고 여러 군데 물어서 자체 해결할 수밖에 없었습니다.
전문가적 관점에서 이게 문제다라고 한마디만 했으면 바로 해결할수 있었던 것을 3일동안 고생하게 하더군요
. 그리고 모든것을 이용자가 알아서해야한다는 주의로 이쪽 분야를 잘아는 전문가는 잘 쓸수있겠지;만
문외한은 쓰기 어렵다는 느낌입니다. 문제가 생기면 스스로 해결해야 하므로..

사양은 좋지만 초보는 이런 점을 고려하는게 좋을 것 같습니다
지나가다 넋두리로 적고갑니다.

BlogIcon 베누시안

사실 저는 다른 곳에 비해 사양이 좋아서 제 클라이언트를 위해 어쩔 수 없이 이용하고는 있습니다. 서비스 측면을 보자면 국내 호스팅을 여러 곳 이용해봤지만 거의 다 비슷하게 실력이나 서비스가 엉망입니다. 영업파트는 고객을 잡기 위해 노력을 하지만 개발파트의 직원은 전혀 그렇지 못합니다. 어느 서버 회사는 왜 그런 걸 내게 의뢰하느냐는 식인 경우도 있습니다.

서버는 돌려야하기 때문에 울며겨자먹기식으로 빌듯이 부탁해야 해결해주기도 합니다. ㅎㅎ 이런 것이 한국의 서버 회사의 현실이라고 생각합니다.

해외 호스팅도 좋은 곳 많고 아시아권으로 진입하고 있고 클라우드쪽에서는 아마존이나 소프트레이어 등 여러 곳에서 한국에 데이터센터를 만들고 있으니 국내 서버회사들은 머지않아 구조조정될 듯 합니다.

하지만 이들 클라우드에 비해 저렴하다는 점이 있기는 합니다. 외국 클라우드는 비싼 편입니다.

티스토리 툴바