2015년 4월 6일 월요일

웹사이트 임시점검, 공사중 페이지 검색엔진에 알리기

웹사이트를 운영하다보면 장비교체, 서비스 점검등으로 길게는 몇시간 짧게는 몇분정도 서비스를 셧다운 시킬때가 있다.

보통은 그냥 셧다운 시키던가 공사중 페이지를 만들고 DNS, 아파치, 자바스크립트등 으로 페이지를 리디렉션 시키는 방법으로 사용자에게 알리곤 한다.

네이버 임시점검중 페이지

임시점검 페이지를 만들어 정상화 시점을 알리고 폐쇄된 것이 아니라 점검중 임을 알리는 것은 잘된 선택이다. 그렇다면 검색엔진의 로봇(크롤러)는 어떻게 판단하고 색인을 갱신 할 것인가도 생각해 보아야 한다.

여러가지 가능성을 생각해보자.
1. 점검페이지 없이 셧다운(404)
    페이지가 삭제 되었다고 인지(색인된 주소 삭제?)
2. 301 리디렉션
    페이지 주소가 영구적으로 변경 되었다고 인지(색인된 주소 갱신?)

이런 문제점을 해결하기 위한 방법들이다.
How to deal with planned site downtime
SEO Friendly Downtimes
How To Handle Downtime During Site Maintenance

내용인 즉
임시점검 페이지로 302 리디렉션 후 header에 503에러 후 서비스 정상화 시점을 적는 방법에 대한 설명이다. 검색엔진과 사용자 모두에게 동일한 결과를 노출 시키기 위한 방법이다.

<?php
header("HTTP/1.1 503 Service Temporarily Unavailable");
header("Status: 503 Service Temporarily Unavailable"); 
header("Retry-After: 3600");
//OR
hdader("Retry-After: Sun, 5 Jan 2012 13:00:00 GMT"); 
?>


물론 서비스 점검을 목적으로 사이트를 다운 시켰다고 구글등의 검색엔진에서 404에러만 믿고 바로 모든 색인을 삭제 하지는 않는다. 또한 503에러가 난다고 몇 주일씩 서비스가 정상화 될때까지 검색엔진이 색인을 보유하고 기다려 주지도 않는다고 한다.

검색엔진에 최적화 하기 위한 방법으로 사용하되 기간에 따라 맹신할 필요는 없다.

2015년 4월 2일 목요일

모바일 최적화 가이드(구글검색엔진 최적화)

모바일 웹사이트 제작시 검토해야될 사항과 자주있는 실수에대해 상세하게 설명하고 있다.
구글등 검색엔진에 최적화 하기위한 방법, 워드프레스 등 다양한 환경에 대응하기 위한 방법등을 구글에서 친절하게 한글로 제공하고 있다. 한번쯤은 읽어보면 좋은 내용.






save image
 https://developers.google.com/webmasters/mobile-sites/?hl=ko

휴대기기 친화성 테스트
https://www.google.com/webmasters/tools/mobile-friendly/

robots.txt 검토 및 모바일 수정사항에 대한 권고사항도 확인할 수 있다.

2015년 3월 31일 화요일

얀덱스(yandex) 웹마스터도구 sitemap 등록

러시아 최대 검색엔진 www.yandex.ru / www.yandex.com

구글처럼 웹마스터 도구가 있으며 사이트맵도 등록할수 있다.
사이트맵을 등록하게 되면 색인이 생성되기까지 2주의 시간이 필요하다고 한다.

웹마스터도구에서 사이트 소유권 확인하고 사이트맵 등록하고 기다려 본다.
메인페이지 하나 색인이 생성되고는 페이지가 색인이 안된다.

 지원 언어가 따로 있다고 한다. 한국어가 없다.!!!
http://help.yandex.com/webmaster/robot-workings/supported-languages.xml


뻘짓했다... 메인페이지만 색인된 것으로 만족하고 주구장창 기다려 본다. 

추가 : 한국어를 제외하지 않았다. 2주가 넘어가니 색인이 늘어나기 시작..



2015년 3월 30일 월요일

CENTOS 재부팅시 이더넷카드 자동 실행안되는 경우

CENTOS 설치 후 사설아이피 사용을 위해서 eth1에 아이피를 세팅한 후 ifup eth1 명령어를 실행해서 네트워크가 올라오는 걸 확인했지만, 재부팅시 자동으로 올라오지 않는 경우는 아래와 같이 설정파일 수정으로 간단하게 해결이 가능하다.

#]cat /etc/sysconfig/network-scripts/ifcfg-eth1


ONBOOT 가 no로 되어 있다면 yes 로 수정한 후

#]service network restart


재부팅해도 올라오는 것을 확인 할수 있다.

리눅스 랜카드 연결 확인(물리적)

IDC에있는 서버의 랜카드에 랜선이 정확하게 연결되어 있는지 알아보는 방법이다.
간단한 명령어로 확인이 가능하다.

#]/sbin/ethtool 장치명(ex eth0)


출력되는 마지막 라인의 Link detected  값을 확인하자.
yes, no 형태로 출력된다.

mysql bin파일(binary-log) 관리

mysql 설치 후 기본설정으로 장기간 사용하다 보면, 지속적으로 쌓인 bin 파일때문에 디스크가 부족해 지는 경우를 경험하게 된다.

물론 삭제 하는 방법도 있지만 설정만으로 간단하게 해결이 가능하다.
/etc/my.cnf 파일에 'expire_logs_day =  7' 이런식으로 로그 저장기간을 정하면 된다.

기본설정은 0 으로 되어 있어 삭제를 하지 않게 되어 있다. 적당한 기간(일)을 입력해서 무한적으로 늘어나는 바이너리 로그를 삭제가 가능하다.

참고로 이설정은 mysql 5.0.3 부터 지원 한다.