• 워드프레스 블로그 방문자 카운터 플러그인 만들기

    오라클 클라우드에 직접 리눅스 서버를 설치하고 워드프레스 블로그를 웹서버와 DB서버로 분리하여 구축하여 운영한지 이제 3년에 접어든다. 그동안 수없이 많은 악성 봇, 스팸댓글과의 싸움이 있었고 테마 커스터머이징을 비롯해 댓글 작성 시 알림 메일 발송 등 필요한 기능들을 직접 구현하기도 했다. 그리고 어제 방문자 카운터를 직접 플러그인으로 제작해 적용했다. 방문자 카운터를 직접 코딩하고 플러그인으로 등록해 사이드바에 표시하는 과정을 기록으로 남긴다. 워드프레스 방문자 카운터 코딩 일단 코딩은 AI의 도움을 받으면 무척 편리하다. V …

  • 워드프레스 블로그 메인에 포스트 목록 표시하기

    워드프레스로 직접 블로그를 구축하다보면 유료 플러그인이나 테마를 구입하고자 하는 충동에 휩싸이곤 한다. 무료 버전의 플러그인이나 테마로는 한계가 명확하기 때문이다. 하지만 필자는 블로그를 구축하고 운영하는데 들어가는 비용이 0원이다. 웹서버와 DB서버는 오라클 클라우드의 평생 무료 티어에서 제공하는 ocpu 1개 (가상 CPU 2개)와 1 G 램 그리고 50GB의 하드 디스크로 구성되는 서버 2대에 구축하였고 CMS로는 워드프레스를 사용하고 있다. 그리고 테마는 제너레이트프레스(GeneratePress) 무료버전을 사용하고 있다. …

  • 쿠버네티스 클러스터에 워드프레스 설치하기

    몇 개월 전에 쿠버네티스에 MariaDB를 설치하면서 시놀로지 NAS를 NFS서버로 구성하여 Persistent Volume을 생성한 다음 MariaDB Pod에 연결하는 작업을 진행했다. https://blogger.pe.kr/1182-k8s-mariadb-nfs-pv-install/ 처음 진행해보는 이 작업은 정말 까다롭고 어려웠던 것으로 기억된다. 단순하게 MariaDB를 설치하는 것이면 그다지 어렵지 않았겠지만 시놀로지 NAS를 NFS로 연결하여 Persistent Volume으로 사용할 수 있도록 설정하는 과정이 쉽지는 …

  • 티스토리를 떠난 이유 그리고 블로그 이사

    티스토리의 추억 네이버에서 운영하던 블로그를 티스토리로 옮긴 것은 2008년 8월이었다. 올려진 글이 그다지 많지 않았기에 글을 하나 하나 옮기는 이사도 어렵지 않았다. 그리고 본격적으로 티스토리에 이런 저런 흔적들을 남겨왔고 십 수년 만에 1000개 가까이 되는 포스트가 쌓였다. 2013년 8월에는 처음으로 구글 애드센스 광고 코드를 티스토리 블로그에 설치했다. 사실 애드센스 광고 수익은 소소한 즐거움을 주는 수준이지 전업으로 할 만큼 수익을 내기는 힘들다. 아마도 상위 0.1%에는 들어야 최저임금 수준의 수익이 가능하지 않을까 …

  • 워드프레스 블로그에 외국어 댓글 차단하기

    블로그를 운영하다 보면 광고 댓글이 골칫거리인 경우가 많다. 심지어 블로그 글에 정상적인 댓글보다 광고 댓글(스팸)이 더 많은 경우가 대부분이다. 워드프레스의 스팸댓글 차단하는 방법 워드프레스로 만든 블로그에서 스팸댓글을 차단하는 방법은 여러 방법이 있다. 그리고 그 중 두 방법을 앞의 글에서 소개한 바 있다. 하나는 워드프레스 자체의 스팸 댓글 차단기능을 활용하는 방법(보러가기)이다. 댓글이나 제목 그리고 작성자 등에 포함되는 문자열을 기준으로 스팸으로 인식시켜 휴지통으로 보내거나 승인 대기열로 보내는 방법이다. 다른 하나는 댓 …

  • 워드프레스 아스트라 테마 검색 위젯 에러

    티스토리에서 오라클 클라우드의 평생 무료 가상머신에 설치한 워드프레스로 이사한지 1년이 다 되어간다. 모든 관리를 스스로 해야만 하다 보니 스팸댓글의 차단부터 검색엔진 외 봇의 접근을 차단은 물론 백업까지 신경 쓸 일이 한 두 가지가 아니다. 그 와중에 블로그 메인 화면에 설치한 검색 위젯이 오작동 한다는 사실을 한참 뒤에야 알게 되었다. 아스트라 테마의 검색 위젯 에러 검색 위젯은 블로그 내 글을 검색하고 그 결과를 출력하는 역할을 한다. 다음 화면에서 오른쪽 사이드바의 맨 위에 있는 검색창이 바로 검색위젯이다. (붉은색 박스) …

  • 워드프레스 테마 업데이트 실패

    워드프레스 테마 - Astra Pro 업데이트 에러 이 블로그에는 아스트라 프로 (Astra Pro) 버전을 테마로 사용하고 있다. 그런데 어느 날부터 갑자기 테마 업그레이드가 안된다. 아래와 같이 업그레이드가 가능하다는 화면이 표시된 상태에서 업데이트를 진행하면 에러가 발생한다. Astra Pro 테마 업데이트 메시지 하지만 이 화면에서 업데이트를 진행하면 다음의 에러 메시지를 뿜어내면서 업데이트에 실패한다. PCLZIP_ERR_BAD_FORMAT (-10) : Invalid archive structure PCLZIP_ERR_ …

  • 워드프레스 블로그 방문자 분석도구 만들기 (Apache access log 분석)

    이 블로그는 오라클 클라우드에서 제공하는 평생 무료 서비스에 구축하여 운영중이다. 우분투 리눅스 가상머신 2대를 생성하여 하나의 가상서버에는 아파치 웹서버와 PHP를 설치하였고 다른 하나의 가상머신에 MariaDB DBMS를 설치하였다. 그리고 웹 어플리케이션은 워드프레스(Wordpress)를 설치하여 블로그를 구성하였다. www가 웹서버이고 mariadb가 DB서버다. 그리고 ap-svr-01 서버가 바로 오늘의 주제인 워드프레스 블로그의 방문자 분석, 즉 Apache 웹서버의 access log를 분석하고 DB에 업로드하는 웹 …

  • [Apache] 악성 봇과 크롤러 차단하기 (.htaccess)

    블로그와 같은 웹서비스를 구축하고 운영하다 보면 광고댓글, 악성댓글과 싸우게 된다. 하지만 이 싸움에서 이기고 나니 다시금 악성 봇과 웹 크롤러들과 싸우는 2차 대전이 벌어졌다. 하지만 이젠 그 싸움이 그다지 어렵지 않다. 광고댓글과 악성댓글을 작성하는 IP를 .htaccess 파일에서 차단하듯 새로운 룰을 적용하여 차단하면 된다. 다만 악성봇과 웹크롤러들은 IP로 차단하기는 어렵다. Access.log를 분석해 보면 User-Agent에 봇이나 웹 크롤러의 정보가 보이는데 광고댓글이나 악성댓글이 대부분 한두개의 IP에서 들어와 …

  • [https 적용하기] 웹서버에 도메인 네임 주소와 SSL 인증서 설치하기

    직접 구축한 홈페이지 또는 블로그에 https를 적용하기 위해서는 웹서버 또는 블로그에 직접 구입한 도메인 네임 주소를 연결하고 SSL 인증서를 발급받아 설치해야 한다. 이 과정은 관련 지식이 부족한 사람에게는 매우 어려운 작업이지만 하나 하나 차근차근 공부해나간다면 충분히 할 수 있는 작업이기도 한다. 일단 도메인 네임 주소의 구입과 워드프레스 등을 설치할 수 있는 웹서버를 이미 구축했다 가정하고 구입한 도메인 네임 주소의 연결과 SSL 인증서 발급을 통해 https를 적용하는 과정에 대해 설명한다. 만약 워드프레스 등의 설치를 …