• aws 서버 구축 방법 아마존 웹서버 워드프레스 설치 2부

    aws 서버 구축 방법 아마존 웹서버 워드프레스 설치 2부

    aws 서버 구축 방법

    1부에서 AWS 서버 구축을 스냅샷을 이용하여 빠르게 만들어보았습니다.

    아마 초보분들은 AMI 이미지가 없기때문에 시작조차 할수 없는 글일수도 있습니다.

    이번에 서버를 새로 만들면서 설정값이 더 추가되는 부분이 생겨 스냅샷을 다시 찍었습니다.

    파이썬 자동 재실행 스크립트와 crontab 수정 그리고 새로운 모듈도 설치하였습니다.

    다음번에 서버 만들때에는 지금보다 더 빠른 시간으로 워드프레스 홈페이지를 만들수 있다는 이야기입니다.

    서버 만드는 과정에 대한 내용은 이미 제가 리눅스맨 워드프레스 블로그에 올려놓았기때문에 하나하나 찾아서 설치를 할 수 있습니다.

    1부과정에서는 스냅샷을 이용한 아마존 서버 만들기

    2부과정에서는 워드프레스를 설치하여 외부에서 접속

    1부과정에서 준비물 중 워드프레스와 phpMyAdmin 툴이 있었습니다.

    이번과정에서는 이 두개를 우선 다운받아 설치부터 하겠습니다.

    제 경우에는 이미 스냅샷에서 httpd 설치와 php설치가 완료된 상태입니다.

    심지어 phpmyadmin 까지 설치가 되어져있지만 2021년 1월달 버전이기때문에 최신버전으로 교체하겠습니다.

    워드프레스는 직접 마지막 버전을 다운받도록 하겠습니다.

    또한 번외이기는 하지만 웹서버가 도중에 다운되지 않도록 파이썬3를 이용하여 프로그래밍해놓을겁니다.

    이를 해두어야지만 갑작스러운 트래픽증가에도 잘 버틸수 있습니다. (어찌보면 제일 중요할수도있겠네요)

    아마존 웹서버(AWS) 워드프레스 설치 방법

    1. 워드프레스를 다운받습니다.

    wordpress.org 사이트에 가면 워드프레스를 다운받을 수있습니다.

    하지만 우리는 서버에 이 파일을 올려야하므로 서버에사 바로 다운받도록 합니다.

    wget https://wordpress.org/latest.zip

    다운을 받았다면 아래 명령어를 이용하여 압축을 해제해야합니다.

    zip 파일이므로 unzip 명령어를 이용합니다.

    unzip lastest.zip

    압축이 자동으로 해제되면서 wordpress 폴더가 만들어졌습니다.

    나중에 chown 명령어로 root 대신 apache 계정으로 변경하겠지만 그 부분은 생략하겠습니다.

    리눅스맨 다른 문서에 이미 관련하여 내용을 올려놓았습니다.

    vHost를 위해서 폴더명도 따로 변경되니 그점도 확인해야합니다.

    2. phpMyAdmin을 다운받습니다.

    아래 명령어를 이용하여 바로 서버에서 다운받으세요

    wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip

    역시 zip 파일로 되어져있어서 위와 동일한 방법으로 압축을 풀면됩니다.

    압축을 풀면 폴더가 하나 만들어지는데 나중에 이 또한 phpMyAdmin 이런형식으로 자신만의 이름으로 vHost에 등록하면됩니다. (생략)

    3. vHost 등록합니다.

    구입한 도메인을 서버에 포워딩 걸도록 합니다.

    이부분은 각 도메인 업체에 웹 DNS 같은 부가서비스 항목으로 제공하기때문에 도메인 업체마다 참고하셔서 등록해야합니다.

    아래 내용을 자신의 홈페이지 도메인에 맞게끔 넣어야합니다.

    vi /etc/httpd/conf/httpd.conf
    
    <VirtualHost *:80>
    ServerAdmin 이메일주소@이메일.com
    DocumentRoot /홈페이지폴더주소
    ServerName 도메인명
    ServerAlias 서브도메인명
    
    ErrorLog logs/error_log
    CustomLog logs/access_log common
    
    <Directory /홈페이지폴더주소>
    Options FollowSymLinks
    AllowOverride all
    Order allow,deny
    Allow from all
    </Directory>
    
    </VirtualHost>

    1부에서도 말씀드렸다싶이 큰 틀 위주로 설명을 빠르게 진행합니다.

    그 이유는 제가 이 글을 작성하면서 실제로 서버구축과 워드프레스를 설치하고 있기때문입니다.

    지금 카페에서 서버 구축하면서 글도 함께 작성하는 중입니다. 도중에 스냅샷 만들기 위해서 또 삭제하고 반복중입니다.

    그렇기 때문에 저도 빨리 만들어야해서 중간중간 설명까지 다 할수 없어 큰 틀에 대해서 알려드리고 있는것입니다.

    vhost 등록도 예전에 글로 다 작성해놓았기에 군데군데 필요한 부분들을 리눅스맨 블로그에서 검색하면 다 나옵니다.

    아래 데이터베이스 생성과 워드프레스 설치도 마찬가지입니다.

    도메인도 오늘 홈페이지를 만들기 위해서 오늘 글 작성(2021년 10월 12일) 하기 직전에 구입하였습니다.

    지난번에 워드프레스 만들때에는 애드센스 얼마를 벌수 있을까? 하고 막연했는데..

    오늘 만드는 워드프레스 홈페이지는 글로벌하게 꽤 많은 사람들이 사용할 서비스라서 엄청난 수익으로 늘어날듯합니다.

    아! 그리고 저는 제가 만들 프로그램 중에서 vHost를 자동으로 생성해주는 프로그램이 있습니다.

    덕분에 vHost에 대해서 크게 생각하지않고 도메인명만 입력하면 자동으로 미리 짜여진 스크립트대로 결과물이 만들어집니다.

    암튼 위에 제가 vhost 간단하게 올려놓았으니 그부분이라도 보시고 복사 붙여넣기 하시면됩니다.

    4. 데이터베이스를 생성합니다.

    vhost가 등록되었고 도메인에 아이피가 포워딩 되었다면 이제 도메인명으로 데이터베이스에 접속합니다.

    그리고 user와 database를 생성하고 나오면 됩니다.

    그리 어려운 작업은 아닙니다.

    유저명을 영어로 만들고 아래쪽 동명의 데이터베이스를 생성하고 모든 권한을 부여. 체크한 다음 생성하면 자동으로 데이터베이스까지 만들어집니다.

    호스트명에는 꼭 % 대신 localhost 로 지정해야합니다.

    그렇지 않으면 해킹 걱정을해야합니다. 로컬로 바꾸셔도 관리 소홀하면 해킹은 마찬가지긴하지만 그대로 조금 더 안심이 됩니다.

    5. 워드프레스를 설치합니다.

    워드프레스 설치는 그냥 프로그램 설치보다 더 쉽습니다.

    도메인으로 접속하면 모든부분이 정상적으로 만들어졌다면 아래처럼 설치 언어를 묻고 진행합니다.

    만약 위의 언어선택이 나오지 않고 아래처럼 나온다면 권한문제입니다.

    Let’s go!

    Database Name 과 Username 그리고 Password를 입력합니다.

    Submit

    아랫부분은 wp-config.php 파일을 아래 내용그대로 복사해서 서버에 입력하라는 이야기입니다.

    Run the installation

    저는 에디트플러스를 이용하여 위의 내용을 복사해서 붙여넣고 다시 실행하였습니다.

    보통 이 부분이 진행되는데 왜 이렇게 뜨냐하면… 권한 지정을 안해주어서 그렇습니다.

    저도 이거 하면서 생각난 부분입니다.

    꼭 워드프레스 복사 하고나서 chown apache.apache -R 워드프레스설치된폴더명 해주시고 또 chmod 이용해서 701 권한도 주어야합니다.

    644 권한인데 그부분도 제 리눅스 워드프레스 블로그에서 644검색하면 자세히 나온 글이 있습니다.

    업로드한 파일의 퍼미션(권한)을 설정합니다.
    
    파일을 644모드로 변경합니다.
    
     find . -type f -exec chmod 644 {} \; 
    
    폴더를 755모드로 변경합니다. 
    
    find . -type d -exec chmod 755 {} \; 
    
    755로 안될경우 모두 777로 바꾸셔서 업데이트 하시고 다시 기존대로 돌리면됩니다. 
    
    아파치권한으로 모든폴더와 파일을 수정합니다.
    
    chown apache.apache -R /wordpress
    
    
    

    파일명을 수작업으로 변경해주고 다시 Run the installation 눌러주면 다시 언어 선택화면이 나오게됩니다.

    한글로 지정하셔도 되지만 저는 글로벌한 워드프레스를 만들기 위해서 그냥 English 버전으로 했습니다.

    다시 데이터베이스 정보를 입력하는 분들도 계실테고요 그냥 저처럼 넘어가는 경우도 있습니다.

    이 부분에는 워드프레스 홈페이지 이름과 로그인 아이디를 그리고 암호와 이메일 주소를 입력하면됩니다.

    이때 Search engine visiblity 라는 항목에 체크를 절대 하면 안됩니다.

    여러분들의 사이트는 이순간부터 구글이나 네이버에 검색이 안되게됩니다.

    암튼 잘 판단하셔서 Install WordPress 클릭하시면됩니다.

    고생하였습니다.

    아래 내용도 보시면 중복되기는 하지만 도움이 되실겁니다.

    많은 분들이 이렇게 생각하실수도 있습니다.

    ‘에이~ 이미 웹 전문가니깐 잘하는거잖아요!!’ 그럴수 있습니다.

    어쩌면 맞는말일수도 있고요. 저는 이미 다 알고 하는거라서 쉽고 빠를수 있습니다.

    하지만 잊지마세요!

    저는 지금 이 기록을 여러분들을 위해서 기록 남기는 부분도 있지만 미래에 제가 더 빠른 구축을 하기 위해서 남겨놓는 기록물이라는 사실을요!!

    저도 여러분들처럼 몰라서 웹사이트 검색해가면서 구글 네이버를 뒤져가며 밤을 샌적이 수도없이 많습니다.

    지금 여러분들은 밤을 새가며 힘들게 배우셔야 하는 단계일수도있으니 큰 틀내용으로 마스터 하려하지마시고 내가 이정도 진행과정에 있구나 라고 생각하면됩니다.

    여러분들은 그저 제가 이곳저곳 펴저있는 정보를 이렇게 글 하나로 뭉쳐놓아 한눈에 편하게 보실수 있고 따라하실수 있음에도 불구하고

    이미 제가 전문가라서 쉽고 빠르게 한다고 생각하실수 있으니… 받아드리는건 각자의 선택의 몫이라 제가 어찌할수는 없어보입니다.

    하지만 누군가는 분명 도움이 되시는분들은 분명 계실겁니다.  (그게 접니다!! ㅎㅎ)

    6. Python3 자동 부하 자동 재실행 스크립트 설치

    이 부분은 제가 개발한 부분인데 아래 주소를 보시고 따라 하시면됩니다.

    저는 이 모니터링을 만들고 이후로 자동으로 서버가 재실행되면서 손이 많이 가지 않게되었습니다.

    대부분 트래픽이 갑자기 늘어날 경우 서버가 다운되는경우가 많은데…

    이때 잠시 신경 못쓰게되면 장시간동안 서버다운이 이어지게됩니다.

    실전에는 메모리가 85% 를 사용하게되면 아파치서버(httpd)를 재실행하도록 해놓았습니다.

    잠시 테스트를 위해서 15%로 지정하고 돌려보았는데 역시 잘 실행되고 log까지 남겨놓았더군요.

    데몬(crontab)에 1분마다 실행하기 때문에 제가 테스트 하려고 하는 그 짧은 시간에 2번 실행된듯합니다.

    파이썬은 프로그래밍으로 되어져있어서 제가 원하는대로 만들수 있는 장점이 있어 좋더군요.

    7. crontab -e 항목에는 아래 그대로 복사 붙여넣기합니다.

    crontab -e
    
    00 03 * * * /root/autoLogsDelete.sh
    */30 * * * * rdate -s time.bora.net
    00 00 * * * ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
    */1 * * * * python3 /root/_PYTHON3/memcheck_httpd_restart.py

    아마도 autoLogsDelete.sh 파일과 memcheck_httpd_restart.py 파일은 여러분들이 없을겁니다.

    이 파일은 제가 직접 만들서 사용하고 있는 파일이며 이항목은 빼고 등록해도 됩니다.

    아래 내용을 그대로 따라 입력하면됩니다.

    vi /root/autoLogsDelete.sh
    
    service httpd stop
    find /etc/httpd/logs/ -size +100M -exec rm -rf {} \;
    service httpd start

    파일이 만들어지고 나면 실행을 해야하므로 꼭 chmod 명령어로 701 권한을 주어야합니다.

    chmod 701 /root/autoLogsDelete.sh
  • aws 워드프레스 설치 방법 초보도 따라해보세요

    aws 워드프레스 설치 방법 초보도 따라해보세요

    aws 워드프레스 설치

    우선 워드프레스를 처음 설치하시는 분들을 위해서 설치형 워드프레스를 깔기 위해서 필요한 부분을 설명부터 해드리겠습니다.

    워드프레스를 설치 하기 위해서는 우선 호스팅 서버가 필요합니다.

    우리가 살기 위해서는 집이 필요하듯 워드프레스 블로그를 운영하기 위해서는 서버가 필요합니다.

    우리는 그곳의 이름을 호스팅서버라고 칭하고 있습니다.

    수 많은 호스팅 업체가 있는데… 서버를 모아 관리하는곳을 보통 IDC라고 말합니다.

    요즘에는 클라우드 업체에서 서버를 VM모드로 조립할수 있어 원하는 서버를 만들수가 있죠.

    워드프레스를 아마존 AWS(Amazon Web Server)에 설치하기 위해서는 바로 아마존에서 운영하는 서버가 필요합니다.

    AWS는 EC2 인스턴스를 구입하여 설치를 하면됩니다.

    이번 포스팅에서는 이미 구입한 AWS 에 워드프레스를 설치하는 방법입니다.

    어디에서 다운받아야 하며 초기에 어떠한 세팅들을 해야하는지를 안내해드릴겁니다.

    AWS를 이미 운영하고 계신다면 초보라도 보고 따라 할 수 있으실겁니다.

    aws 워드프레스 설치 방법

    1. 워드프레스 설치 파일을 다운받습니다.

    AWS에서는 아래 명령어로 최신 워드프레스 설치 파일을 다운받을 수 있습니다.

    wget https://wordpress.org/latest.zip

    2. 워드프레스 악축해제 명령어로 설치 파일을 폴더에 저장합니다.

    AWS에 바로 받으신 분들은 압축부터 풀어야합니다.

    zip 파일로 되어져있을테니 아래 명령어를 이용하면 압축이 풀립니다.

    unzip lastest.zip

    압축을 풀었다면 웹서버 가상호스트에 등록하면 됩니다.

    이 부분은 EC2 웹서버 설치 관련 글을 참고하셔서 vHost를 생성하면됩니다.

    각자 자신들의 폴더와 서버이름을 입력해서 작성하면됩니다.

    처음 압축을 풀면 소유자가 root로 나옵니다.

    chown apache.apache wordpress/ -R

    이라고 명령어를 치면 워드프레스 이하 모든 파일,포더에 대해서 아파치 소유자로 변경됩니다.

    3. 데이터베이스를 생성합니다.

    웹서버에 phpmyadmin이 설치되어져있다면 아래처럼 사용자계정을 생성해주면서 동시에 데이터베이스를 생성합니다.

    동명의 데이터베이스를 생성하고 모든 권한을 부여. 라는 부분에 체크하면 됩니다.

    이때 생성하는 데이터베이스 명과 유저명 그리고 암호를 잘 기억해야합니다.

    다음 항목에 나올 워드프레스 설치에 입력해야하기때문이죠.

    4. 워드프레스 설치를 합니다.

    vHost까지 이미 생성된 분들은 도메인명을 입력하면 바로 설치 화면으로 전환됩니다.

    저는 한국어를 클릭해서 설치했습니다.

    큰 차이는 없으나 관리자 모드에서 한글로 나오는 정도입니다.

    계속 버튼을 클릭하고 제가 위에서 이미 말씀드렸던 부분에 대한 설명이 나올겁니다.

    데이터베이스 정보를 입력하여야 한다는 내용이죠. 그냥 시작합니다. 버튼을 누르면 다음으로 넘어가는데 그때 입력하면됩니다.

    아래 데이터베이스 정보를 이전에 만들때 입력했던 정보 그대로 입력합니다.

    정상적으로 똑같이 입력했다면 다음으로 넘어갑니다.

    만약 이때 오류가 발생한다면 분명 뭔가 놓치신겁니다.

    암호가 틀렸거나 데이터베이스명 철자가 틀렸거나 로컬이 아닌 %로 입력했다거나 그럴겁니다.

    설치 실행을 클릭하면 대부분 10초안에 끝납니다.

    만약 이때 시간이 오래 지연된다면 데이터베이스 연결이 잘 안된다고 보시면되십니다.

    잘 설치되셨다면 위의 성공 멘트와 함께 로그인을 할 수 있습니다.

    아이디와 비밀번호를 입력하여 로그인하면 관리자 화면을 볼 수 있습니다.

    5. 테마와 플러그인을 설치합니다.

    저는 기존 설치된 테마와 플러그인을 모두 삭제하였습니다.

    테마는 구글 검색과 네이버 검색이 잘 되어야하므로 SEO가 어느정도 검증된 테마를 골라야합니다.

    플러그인은 SEO 플러그인과 꼭 필요한 몇가지 플러그인들이 있는데 그러한 플러그인을 설치하면됩니다.

    마음에 든다고 하여 무조건 설치해서는 안됩니다.

    꼭 검증된 플러그인과 검증된 테마를 설치해야합니다.

    이제 회사 소개와 검색 유입을 위한 키워드로 글을 작성하면됩니다.

    네이버 검색과 구글 검색은 웹마스터도구와 애널리틱스를 이용하면 노출이 서서히 되기 시작합니다.

    웹사이트 1등 잡는 노하우가 궁금하신가요?

    그렇다면 워드프레스 태그 항목을 로얄키워드를 이용하여 등록해보시기 바랍니다.

    감사합니다.

  • 워드프레스 사이트 수동 이전 방법 – 글 파일 옮기기

    워드프레스 사이트 수동 이전 방법 – 글 파일 옮기기

    워드프레스 사이트 수동 이전 방법에 대한 경험 문서입니다

    워드프레스 사이트 전체를 옮기는 방법은 그냥 DB전체 백업과 폴더 전체를 복사(압축)하여 이전하면됩니다.

    이부분에 대해서는 크게 어려움이 없지만 오늘 제가 하려는 작업은 이미 워드프레스 2개가 운영 중입니다.

    A 워드프레스에서는 애드센스 승인이 되지 않아 B 워드프레스로 모든 글을 옮기기 위해 글 옮기는 과정을 포스팅합니다.

    애드센스 수익을 내기 위해서는 구글 애드센스 계정내에 도메인 승인이 이루어져야합니다.

    A라는 워드프레스는 발행한 글만 36개 입니다.

    워드프레스 사이트 수동 이전 방법

    이 글들을 하나하나 정성드려 작성한 글이기에 그냥 버리기에는 너무 아깝고 애드센스 수익 승인받은 도메인으로 옮기는것입니다.

    A라는 워드프레스는 사실 문제가 전혀없습니다. 하지만 정책상 어떠한 이유인지는 몰라도 자꾸 다른곳에 글을 복사해서 작성된 자동화된 사이트라고만 제시하더군요.

    이러한 경우를 많이 당해보았고 또 왠만해서는 승인받을수 있지만…

    이 A 워드프레스는 제가 운영하는것이 아니라 아내가 운영하는곳이고해서 그냥 아내 워드프레스 B 블로그로 옮기는것입니다.

    B워드프레스도 처음에 이러한 과정을 거쳤지만 현재는 애드센스 수익이 나오고 있는 워드프레스입니다.

    워드프레스 사이트 수동 이전 방법 – 글 파일 옮기기

    1. 워드프레스 관리자 화면에서 도구 항목의 내보내기 기능을 이용합니다.

    워드프레스 사이트 수동 이전

    내보내기 할때에는 여러가지 조건들이 존재하지만 따로 설치를 해야하는 플로그인은 없습니다.

    원하는 조건 항목을 클릭하여 글을 선택합니다.

    저는 전체를 다 옮겨야 하므로 그냥 위의 상태로 [ 내보내기 파일 다운로드 ] 버튼을 눌렀습니다.

    파일다운로드 받으면 xml 파일을 하나 받습니다.

    xml 파일을 열어보면 제목, 이미지주소, 글 주소 등등 내용들로 이루어져있습니다.

    따로 수정할 필요는 없고 옮기려는 워드프레스에서 가져오기 버튼을 이용해야합니다.

    2. 옮길 글을 새로운 워드프레스 관리자의 도구 -> 가져오기 기능을 이용합니다.

    이때에는 워드프레스 플러그인을 하나 설치해야합니다.

    각 항목에 따라 다른데 오늘 제가 옮기는 것은 글을 수동으로 옮기는것이기에 WordPress 플러그인을 [ 지금설치 ] 버튼을 눌러 설치해줍니다.

    파일선택 버튼을 클릭하여 A 워드프레스에서 받은 xml을 선택합니다.

    파일 업로드하고 가져오기 버튼을 클릭하면 아래처럼 글쓴이변경과 첨부파일 내려받기와 가져오기에 대한 체크항목을 확인 할 수 있습니다.

    이렇게 진행을 하면 성공한것입니다.

    하지만 이렇게 옮기게되면 파일이 옮겨지지 않습니다.

    워드프레스의 파일 엑박이 나오죠.

    이전 A 워드프레스의 도메인이 그대로 살아 있다면 엑박이 나오지는 않고 그 도메인의 주소로 이미지를 볼 수 있습니다.

    하지만 도메인을 버리거나 변경하는 경우라면 또 지금처럼 엑박이 나오게됩니다.

    이때에는 DB 하나하나를 수정해주거나 (일괄 도메인을 특정 도메인으로 바꿀 수 있습니다) 가져오기 할때 xml 파일을 미리 변경하는것입니다.

    이 주소를 미리 바꾸고 첨부파일을 이전 서버에서 압축해서 그대로 옮기면됩니다.

    이렇게 할 경우 또 문제가 하나 더 발생합니다.

    uploads/폴더에 그런경우는 잘 없지만.. 파일명이 겹치는것입니다.

    파일명이 겹치는것으로 방지 하는 방법을 알려드릴게요.

    현재 제가 사용하는 방법이기도 합니다.

    기존 A 워드프레스의 upload 폴더 전체를 _Awordpress 이렇게 접미사를 붙여 폴더명을 새롭게 만들어줍니다.

    그리고 압축하여 B 워드프레스 업로드 폴더와 나란히 옆에 둡니다.

    이렇게 업로드 폴더가 2개가 되죠.

    기존 A워드프레스의 모든 파일은 접미사가 붙어 이는 이 폴더에 존재합니다.

    그러면 우리는 A워드프레스의 xml 파일 내용중 upload 폴더까지 수정해주어야겠죠?

    우선 기존 A워드프레스 도메인명으로 xml 파일을 검색합니다.

    그러면 생각보다 엄청 많이 검색됩니다.

    이렇게 Ctrl + H 누를경우 (노트패드에서 단축키) 찾을글자와 바꿀 글자를 일괄 변경할 수 있습니다.

    그리고 upload폴더명도 같이 바꿔주셔야합니다.

    확인해보니 url 주소도 잘 변경되었고 파일 위치도 제가 접미사로 등록한 upload폴더에 잘 연결되어져있습니다.

    물론 사진도 잘 나오고 있네요.

    만약 C라는 새로운 워드프레스를 또 B 워드프레스에 통합하고 싶다면..

    저는 또 이렇게 반복할겁니다.

    정리해볼까요?

    제일먼저. upload 폴더를 접미사(기존도메인을 기억할수 있도록 가급적이면 _도메인명 으로 접미사로 제목을 만드세요)를 붙여 압축하여 파일을 옮길 워드프레스의 upload 폴더와 같은 위치에 나란히 복사합니다.

    두번째. 가져오기 xml 파일속에 도메인을 모두 일괄 바꾸시고 upload폴더를 접미사 붙인 폴더명으로 변경해줍니다.

    간단하죠?