AWS 26

워드프레스 Unable to create directory wp-content/uploads ... 에러 해결 방안 (아마존 라이트세일, 아마존 리눅스)

먼저, 이 글은 이 블로그에 게제되어 있는, "Amazon Lightsail 여러개의 워드프레스 사이트 설치" 연재글에 따라 아마존 리눅스에 워드프레스를 설치한 경우의 해결 방법임을 미리 알려 드립니다. 물론, 그렇지 않다고 하더라도 해결 방법에 있어서의 틀은 비슷할테니 참고하면 되겠습니다. 워드프레스를 처음 설치하고 관리자 페이지에서 플러그인이나 테마등을 다운로드 받으려고 하면, "Unable to create directory wp-content/uploads/.... Is its parent directory writable by the server?" 이와 같은 에러 메시지를 보여주며 실패하는 경우가 있습니다. 이런 경우에 대해 구글에서 검색해 보면 해결 방법에 대한 많은 글들이 나옵니다만, 결국..

워드프레스 서버 주소 변경 (아마존 라이트세일, 아마존 리눅스)

"Amazon Lightsail 여러개의 워드프레스 사이트 설치" 글을 쓰다보니, 한가지 중요한 점을 잊고 있었습니다. 서버 인스턴스를 삭제하고 다시 생성하면 (스냅샷에서 생성하는 것도 마찬가지) 서버 인스턴스의 퍼블릭 IP가 변경됩니다. 그런데 도메인을 연결하지 않고 작업을 하고 있기 때문에 워드프레스가 설치되면서 워드프레스 설정값에는 설치할 때의 서버 IP를 사이트 URL로 가지고 있게 됩니다. 따라서 스냅샷 서버 인스턴스를 다시 실행해도, 웹브라우저에서 새로 부여받은 퍼블릭 IP로 접속해 봤자, 화면이 깨지게 됩니다. (엉뚱한 주소로 작업을 할테니까요.) (바로 이런 현상이.... 페이지가 엉망이 되어 버립니다...) 서버의 주소가 변경되면, 워드프레스의 관리자 페이지에서 WordPress Addr..

Amazon Lightsail 여러개의 워드프레스 사이트 설치 (7) - MySQL 워드프레스 DB설정

이제 아마존 리눅스에 설치된 MySQL에서 4개의 사이트들(두개의 각각 두개씩의 언어를 가진 사이트들)을 위해 워드프레스가 사용할 DB를 생성해 보도록 합니다. 사실 DB를 하나만 생성해서 여러개의 워드프레스 사이트가 사용하도록 할 수도 있습니다. 워드프레스를 설치할 때, DB 테이블 앞의 Prefix 부분에 붙일 텍스트를 바꾸어 주기만 하면 됩니다. 보통 웹호스팅과 같이 DB를 직접 컨트롤 할 수 없는 경우에 많이 사용하는 방법입니다. 하지만, 이런 경우에 나중에 다른 DB로 분리하고 싶으면 일이 더 많아 지겠죠. 또한 같은 DB를 사용하므로 비교적 보안상으로도 좋지 못할 것입니다. 여기서는 어차피 아마존 라이트세일 (Amazon Lightsail) 을 사용하므로 MySQL도 직접 설치 하였습니다. 따..

Amazon Lightsail 여러개의 워드프레스 사이트 설치 (3) - Amazon Linux에 APM 설치

이제 지난 시간에 생성했던 Amazon Linux 인스턴스에 APM(Apache + PHP + MySQL)을 설치합니다. 아마존 리눅스에 APM을 설치하는 방법은 아마존 문서에 잘 설명되어 있으므로 그대로 따라하면 됩니다. 해당 내용은 LAMP 웹서버 설치에 잘 설명되어 있습니다. 그럼 그 내용에 따라 APM을 설치해 보겠습니다. 참고로 저는 이 글 시리즈에 필요한 부분만 적용하도록 하겠습니다. 1. 설치된 소프트웨어 패키지 전체 업데이트 아마존 리눅스 (Amazon Linux)는 CentOS에 기반한 것으로 알려 졌습니다. CentOS는 RedHat의 유사 배포본이기 때문에 yum 업데이트를 사용 할 수 있습니다. 아마존 리눅스에 설치된 소프트웨어 배포본들을 최신 업데이트로 유지하기 위해 터미널에서 아..

Amazon Lightsail 여러개의 워드프레스 사이트 설치 (2) - SSH SFTP 접속

이제 지난 글에서 아마존 라이트세일(Amazon Lightsail)에 생성한 인스턴스에 SSH로 접속해 봅니다. 이 글에서는 iTerm을 이용해서 SSH로 터미널 접속하는 것과, Transmit을 이용해서 SFTP로 접속하는 것을 보게될 것입니다.(두 프로그램은 MacOS용 소프트웨어 입니다. 여기서는 맥을 이용할 것이지만, 윈도우 사용자라면, iTerm 대신 Putty를, Transmit 대신 WinSCP나 FileZillar등을 이용하면 됩니다.) 1. 접속 정보 확인, 키 파일 다운로드 (1) 접속 정보 확인 아마존 라이트세일에 로그인하면, 지난 글에서와 같이 생성된 인스턴스가 나옵니다. (!) 주의 인스턴스가 생성되면 요금이 부과되기 시작합니다. (단, 무료 기간 제외) 이 글을 쓰는 시점 기준,..

Amazon Lightsail 여러개의 워드프레스 사이트 설치 (1) - 인스턴스 생성

아마존 라이트세일 (Amazon Lightsail)은 아마존이 내놓은 일종의 가상서버 서비스입니다. 기존의 디지털오션의 VPC 서비스나, 호스팅 업체들의 가상 서버 서비스와 비슷하다고 보면 되겠네요. AWS 사용자들은 EC2 쓰면 되지 않겠냐고 생각 하겠지만... 어떤 서비스를 할 것인가에 따라 생각을 달리 할 수 있을 것 같습니다. 일단 일반적으로 크지 않은 웹 서버를 생각한다면, AWS의 EC2를 사용하는 것보다 비용이 훨씬 저렴합니다. 세팅하는 것도 훨씬 쉬운 편이고요. (내부적으로는 EC2를 사용하는 것 같습니다만...) 예를 들어, EC2의 t2.micro 인스턴스의 경우 무료 트래픽 기준이 데이터 전송 기준 월 1GB 이지만 (아마존은 수신은 무료입니다.) 라이트세일은 같은 t2.micro 수..

아마존 Gaming on AWS 행사

아마존은 지난 2017년 10월 24일 양재동 엘타워에서 Gaming on AWS 행사를 열었습니다. 이번 행사 역시 서버리스를 강조 하였는데요. 오전 세션에서는 마이크로 서비스 아키텍쳐라는 주제로 케이스 스터디가 있었고, 일본 게임시장과 중국 게임시장 상황과 각각 AWS를 어떻게 활용하는지에 대한 이야기를 들려주었습니다. 오후 세션은 Hands-on Labs (실습)로 이루어 졌죠. 4개의 트랙으로 나누어 DevOps, GameLift, Data Analytics, Serverless 에 대한 실습이 이루어졌습니다. 저는 평소 람다와 API게이트웨이에 관심이 있었기 때문에 서버리스 실습에 참여 하였는데요, 가상의 시나리오를 통해 람다와 API게이트웨이, 코그니토, 클라우드 프론트, S3, DynamoD..

[AWS의 기본 09] NGINX를 node.js의 프록시로 설정하기

이번에는 NGINX를 node.js의 프록시로 사용하는 방법을 살펴 봅니다. node.js의 알려지지 않은 보안 문제가 있을 수 있기 때문에 NGINX와 같은 웹서버를 앞단에 프록시 서버로 사용하는 것을 추천한다고 알려져 있지요. 그 방법을 살펴보겠습니다. [9] NGINX를 node.js의 프록시로 설정하기 지난 포스팅들에서 이미 EC2 인스턴스에 node.js와 NGINX를 설치는 했습니다만, 함께 사용해 보는 것은 처음인것 같습니다. 먼저 테스트를 위해 예제로 간단한 node.js 소스코드를 만들어 봅니다. (샘플일 뿐이므로 각자 원하는 대로 만들면 되겠네요.) 아래 내용을 홈디렉터리에 'test.js' 라는 이름으로 저장합니다. (샘플일 뿐이므로 원하는 디렉터리에 원하는 이름으로 저장해도 됩니다...

[AWS의 기본 08] EC2 인스턴스에 도메인 연결 (Route53)

지난 회에서는 AWS의 Elastic IP(이하 EIP)를 통해 고정 IP 주소를 획득하는 방법을 알아 보았습니다. 그러나 실제로 숫자로 이루어진 IP 주소로 접속하는 사람은 거의 없을 것입니다. 대부분은 사람이 기억하기 쉽고, 또한 IP 주소가 바뀌더라도 매핑만 바꾸어 주어 접속할 수 있도록 도메인 이름을 사용할 것입니다. 이번 포스팅에서는 EC2 인스턴스에 본인 소유의 도메인을 연결해 봅니다. 미리 여기에 사용할 자신의 도메인은 가지고 있어야 한다는 점을 미리 알려 드립니다. [8] EC2 인스턴스에 도메인 연결 (Route53) AWS에서 도메인을 연결하기 위해 사용하는 도메인 설정 서비스는 Route 53 이라고 부릅니다. Route 53은 일반적인 도메인 설정에 더해서 편리한 기능들을 제공합니다..

[AWS의 기본 07] Elastic IP (EIP) 고정 아이피 할당

지금까지는 EC2 인스턴스의 Pubic IP 를 통해 인스턴스에 접속 하였습니다. 그런데, 인스턴스의 Public IP는 고정된 IP 주소가 아니라 유동적인 IP 주소 입니다. 따라서, EC2 인스턴스를 STOP 한 후에 재시작 하게 되면 다른 IP 주소라 바뀌게 됩니다. 그렇기 때문에 기본 Public IP는 실제 서비스에서 사용하기가 어렵다고 볼 수 있습니다. (이는 우리가 보통 인터넷 서비스를 받을 때 사용하는 유동 IP와 같은 개념이라고 보면 되겠습니다.) 따라서 우리가 외부에서 안정적으로 접속하기 위해서는 고정 IP가 필요한데, 이 고정 IP를 AWS에서는 Elastic IP (엘라스틱 IP, 이하 EIP), 줄여서 EIP라고 부릅니다. 고정 아이피는 전세계적으로 부족한 자원이기 때문에, 보통 ..