SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
[설치의 정석]
EC2에서 워드프레스 설치하기
박재호(jrogue@gmail.com)
참고 자료
• <컴퓨터 vs 책> 블로그
• http://jhrogue.blogspot.com/
• OKdevTV 유튜브 방송
• 오늘자 방송:
https://www.youtube.com/watch?v=T8FWtyrC1i0&list=PLdntWJk2tJPJe12
b_ZV4RnUlMLymtHkvG&index=2
• 설치의 정석 리스트:
• https://www.youtube.com/playlist?list=PLdntWJk2tJPJe12b_ZV4RnUlMLymtHkvG
• 슬라이드 셰어
• https://www.slideshare.net/jrogue/presentations
• ASCIINEMA
• https://asciinema.org/~jrogue
오늘 소개할 내용
• EC2에서 워드프레스 설치하기
• LAMP 스택 + WP
• 데이터베이스 구성과 설정 파일
• 주의:
• 최소 단계로 꼭 필요한 프로그램만 설치한다
• 내가 무엇인지 모르는 행위는 하지 않는다!!!
EC2 설정(1)
• 설치의 정석이므로… EC2는 plain vanilla
EC2 설정(2)
• 보안 그룹에 80(HTTP) 추가
몇 가지 힌트
• LAMP 설치 과정에서 단계별로 점검해야 한다!
• 어디서 잘못되었는지 초기에 인지할 필요가 있음
• 접근 허가에 특히 주의! /var/www/html
• 참고: https://chmodcommand.com/chmod-2775/
• WP salt에 주의
• https://kinsta.com/knowledgebase/wordpress-salts/
• 로그인할 때 브라우저 쿠키에 안전하게 저장할 목적으로 사용하는 키
• 플러그인으로 처리할 수도 있지만… 정석이니까 wp-config.php에서 수작
업으로 편집
스크립트(1)
$ sudo yum update -y
$ sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
$ sudo yum install -y httpd mariadb-server
$ sudo systemctl start httpd
$ sudo systemctl enable httpd
$ sudo systemctl is-enabled httpd
1단계_ LAMP 설치
$ curl localhost
$ sudo usermod –a –G apache ec2-user
$ exit # 다시 로그인 한다
$ groups
$ sudo chown –R ec2-user:apache /var/www
$ sudo chmod 2775 /var/www && find /var/www –type d –exec sudo chmod 2775 {} ;
$ find /var/www –type f –exec sudo chmod 0664 {} ;
$ cd /var/www
$ echo “<?php phpinfo(); ?>” > /var/www/html/phpinfo.php
$ curl localhost/phpinfo.php
$ rm /var/www/html/phpinfo.php
2단계_ 그룹 추가 후 아파치 디렉토리 접근 권한 변경
스크립트(2)
$ sudo systemctl start mariadb
$ sudo mysql_secure_installation
$ sudo systemctl enable mariadb
$ sudo yum install php-mbstring -y
$ sudo systemctl restart httpd
$ sudo systemctl restart php-fpm
$ cd /var/www/html
$ wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
$ mkdir phpMyAdmin && tar xvpfz phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1
$ rm phpMyAdmin-latest-all-languages.tar.gz
$ sudo systemctl start mariadb
$ curl localhost/phpMyAdmin
3단계_ MariaDB 설정, phpMyAdmin 설치
$ cd
$ mkdir src
$ cd src
$ wget https://wordpress.org/latest.tar.gz
$ tar xvpfz latest.tar.gz
$ mysql -u root -p
mysql> CREATE USER ‘wpuser'@'localhost' IDENTIFIED BY 'your_strong_password';
mysql> CREATE DATABASE `wpdb`;
mysql> GRANT ALL PRIVILEGES ON `wpdb`.* TO ‘wpuser’@’localhost’;
mysql> FLUSH PRIVILEGES;
mysql> exit
4단계_ WP 설치
스크립트(3)
$ cd wordpress/
$ cp wp-config-sample.php wp-config.php
$ wget --output-document=salt.txt https://api.wordpress.org/secret-key/1.1/salt/
$ vi wp-config.php
define('DB_NAME’, wpdb'); --> 수정
define('DB_USER', ‘wpuser'); --> 수정
define('DB_PASSWORD', 'your_strong_password'); --> 수정
<<<<<<<<<<<<<<< 앞서 wget으로 얻은 salt.txt 내용으로 변경한다 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
5단계_ WP 설치
$ cd ..
$ cp -a wordpress/ /var/www/html/
$ sudo vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/html"> 영역에서 다음을 수정
AllowOverride None → ALL
$ sudo systemctl restart httpd
6단계_ WP 설정
웹 브라우저에서 확인
보면서 따라해봅시다~~~
• https://asciinema.org/a/rTBOUOLRJErrmJtYjYwNtjmID

Contenu connexe

Tendances

[5분 따라하기] bash 타임아웃 패턴
[5분 따라하기] bash 타임아웃 패턴[5분 따라하기] bash 타임아웃 패턴
[5분 따라하기] bash 타임아웃 패턴Jay Park
 
[5분 따라하기] bash에서 파일 확장자 변경
[5분 따라하기] bash에서 파일 확장자 변경[5분 따라하기] bash에서 파일 확장자 변경
[5분 따라하기] bash에서 파일 확장자 변경Jay Park
 
2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리Jay Park
 
2020년 5월 2일 개발 이야기 정리
2020년 5월 2일 개발 이야기 정리2020년 5월 2일 개발 이야기 정리
2020년 5월 2일 개발 이야기 정리Jay Park
 
[5분 따라하기] 3차원 도넛을 콘솔에 그리기
[5분 따라하기] 3차원 도넛을 콘솔에 그리기[5분 따라하기] 3차원 도넛을 콘솔에 그리기
[5분 따라하기] 3차원 도넛을 콘솔에 그리기Jay Park
 
[5분 따라하기] EC2 키 분실 후 대응 방법
[5분 따라하기] EC2 키 분실 후 대응 방법[5분 따라하기] EC2 키 분실 후 대응 방법
[5분 따라하기] EC2 키 분실 후 대응 방법Jay Park
 
[5분 따라하기] paste로 파일 두 개 join하기
[5분 따라하기] paste로 파일 두 개 join하기[5분 따라하기] paste로 파일 두 개 join하기
[5분 따라하기] paste로 파일 두 개 join하기Jay Park
 
[5분 따라하기] 3차원 지구본을 콘솔에 그리기
[5분 따라하기] 3차원 지구본을 콘솔에 그리기[5분 따라하기] 3차원 지구본을 콘솔에 그리기
[5분 따라하기] 3차원 지구본을 콘솔에 그리기Jay Park
 
2020년 2월 1일 개발 이야기 정리
2020년 2월 1일 개발 이야기 정리2020년 2월 1일 개발 이야기 정리
2020년 2월 1일 개발 이야기 정리Jay Park
 
2020년 8월 1일 개발 이야기 정리
 2020년 8월 1일 개발 이야기 정리 2020년 8월 1일 개발 이야기 정리
2020년 8월 1일 개발 이야기 정리Jay Park
 
2020년 9월 19일 개발자 이야기
2020년 9월 19일 개발자 이야기2020년 9월 19일 개발자 이야기
2020년 9월 19일 개발자 이야기Jay Park
 
Python Recipes for django girls seoul
Python Recipes for django girls seoulPython Recipes for django girls seoul
Python Recipes for django girls seoulJoeun Park
 
Do not use Django as like as SMARTSTUDY
Do not use Django as like as SMARTSTUDYDo not use Django as like as SMARTSTUDY
Do not use Django as like as SMARTSTUDYHyun-woo Park
 
2020년 6월 13일 개발 이야기 정리
2020년 6월 13일 개발 이야기 정리2020년 6월 13일 개발 이야기 정리
2020년 6월 13일 개발 이야기 정리Jay Park
 
2020년 9월 26일 개발자 이야기
2020년 9월 26일 개발자 이야기2020년 9월 26일 개발자 이야기
2020년 9월 26일 개발자 이야기Jay Park
 
2020년 10월 10일 개발자 이야기
2020년 10월 10일 개발자 이야기2020년 10월 10일 개발자 이야기
2020년 10월 10일 개발자 이야기Jay Park
 
2020년 4월 4일 개발 이야기 정리
2020년 4월 4일 개발 이야기 정리2020년 4월 4일 개발 이야기 정리
2020년 4월 4일 개발 이야기 정리Jay Park
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: YeomanJae Sung Park
 

Tendances (20)

[5분 따라하기] bash 타임아웃 패턴
[5분 따라하기] bash 타임아웃 패턴[5분 따라하기] bash 타임아웃 패턴
[5분 따라하기] bash 타임아웃 패턴
 
[5분 따라하기] bash에서 파일 확장자 변경
[5분 따라하기] bash에서 파일 확장자 변경[5분 따라하기] bash에서 파일 확장자 변경
[5분 따라하기] bash에서 파일 확장자 변경
 
2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리
 
2020년 5월 2일 개발 이야기 정리
2020년 5월 2일 개발 이야기 정리2020년 5월 2일 개발 이야기 정리
2020년 5월 2일 개발 이야기 정리
 
[5분 따라하기] 3차원 도넛을 콘솔에 그리기
[5분 따라하기] 3차원 도넛을 콘솔에 그리기[5분 따라하기] 3차원 도넛을 콘솔에 그리기
[5분 따라하기] 3차원 도넛을 콘솔에 그리기
 
[5분 따라하기] EC2 키 분실 후 대응 방법
[5분 따라하기] EC2 키 분실 후 대응 방법[5분 따라하기] EC2 키 분실 후 대응 방법
[5분 따라하기] EC2 키 분실 후 대응 방법
 
[5분 따라하기] paste로 파일 두 개 join하기
[5분 따라하기] paste로 파일 두 개 join하기[5분 따라하기] paste로 파일 두 개 join하기
[5분 따라하기] paste로 파일 두 개 join하기
 
[5분 따라하기] 3차원 지구본을 콘솔에 그리기
[5분 따라하기] 3차원 지구본을 콘솔에 그리기[5분 따라하기] 3차원 지구본을 콘솔에 그리기
[5분 따라하기] 3차원 지구본을 콘솔에 그리기
 
2020년 2월 1일 개발 이야기 정리
2020년 2월 1일 개발 이야기 정리2020년 2월 1일 개발 이야기 정리
2020년 2월 1일 개발 이야기 정리
 
2020년 8월 1일 개발 이야기 정리
 2020년 8월 1일 개발 이야기 정리 2020년 8월 1일 개발 이야기 정리
2020년 8월 1일 개발 이야기 정리
 
2020년 9월 19일 개발자 이야기
2020년 9월 19일 개발자 이야기2020년 9월 19일 개발자 이야기
2020년 9월 19일 개발자 이야기
 
Python Recipes for django girls seoul
Python Recipes for django girls seoulPython Recipes for django girls seoul
Python Recipes for django girls seoul
 
Do not use Django as like as SMARTSTUDY
Do not use Django as like as SMARTSTUDYDo not use Django as like as SMARTSTUDY
Do not use Django as like as SMARTSTUDY
 
Django beginning
Django beginningDjango beginning
Django beginning
 
2020년 6월 13일 개발 이야기 정리
2020년 6월 13일 개발 이야기 정리2020년 6월 13일 개발 이야기 정리
2020년 6월 13일 개발 이야기 정리
 
2020년 9월 26일 개발자 이야기
2020년 9월 26일 개발자 이야기2020년 9월 26일 개발자 이야기
2020년 9월 26일 개발자 이야기
 
2020년 10월 10일 개발자 이야기
2020년 10월 10일 개발자 이야기2020년 10월 10일 개발자 이야기
2020년 10월 10일 개발자 이야기
 
2020년 4월 4일 개발 이야기 정리
2020년 4월 4일 개발 이야기 정리2020년 4월 4일 개발 이야기 정리
2020년 4월 4일 개발 이야기 정리
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman
 
Gulp 입문
Gulp 입문 Gulp 입문
Gulp 입문
 

Similaire à [설치의 정석] EC2에서 워드프레스 설치하기

postgres_빌드_및_디버깅.pdf
postgres_빌드_및_디버깅.pdfpostgres_빌드_및_디버깅.pdf
postgres_빌드_및_디버깅.pdfLee Dong Wook
 
20141229 dklee docker
20141229 dklee docker20141229 dklee docker
20141229 dklee dockerDK Lee
 
Internship backend
Internship backendInternship backend
Internship backendYein Sim
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Dongil Yeom
 
ARTIK 710 IoT class 02
ARTIK 710 IoT class 02ARTIK 710 IoT class 02
ARTIK 710 IoT class 02정출 김
 
Rb vs wp 로드타임 성능비교
Rb vs wp 로드타임 성능비교Rb vs wp 로드타임 성능비교
Rb vs wp 로드타임 성능비교Gitaek kwon
 
Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나JeongHun Byeon
 
Vim for php
Vim for phpVim for php
Vim for phpSol Kim
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제Tae Young Lee
 
Python codelab1
Python codelab1Python codelab1
Python codelab1건희 김
 
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXpressEngine
 
Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)TaekSoon Jang
 
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기Ted Won
 
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1Ji-Woong Choi
 
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Clouddocker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea CloudJude Kim
 
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기KTH, 케이티하이텔
 
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기소리 강
 
[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법Amy Kim
 
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)I Goo Lee
 

Similaire à [설치의 정석] EC2에서 워드프레스 설치하기 (20)

postgres_빌드_및_디버깅.pdf
postgres_빌드_및_디버깅.pdfpostgres_빌드_및_디버깅.pdf
postgres_빌드_및_디버깅.pdf
 
20141229 dklee docker
20141229 dklee docker20141229 dklee docker
20141229 dklee docker
 
Lam pstack
Lam pstackLam pstack
Lam pstack
 
Internship backend
Internship backendInternship backend
Internship backend
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
 
ARTIK 710 IoT class 02
ARTIK 710 IoT class 02ARTIK 710 IoT class 02
ARTIK 710 IoT class 02
 
Rb vs wp 로드타임 성능비교
Rb vs wp 로드타임 성능비교Rb vs wp 로드타임 성능비교
Rb vs wp 로드타임 성능비교
 
Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나Front-end Development Process - 어디까지 개선할 수 있나
Front-end Development Process - 어디까지 개선할 수 있나
 
Vim for php
Vim for phpVim for php
Vim for php
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제
 
Python codelab1
Python codelab1Python codelab1
Python codelab1
 
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
 
Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)Db프로그래밍 환경 설정(131062 장택순)
Db프로그래밍 환경 설정(131062 장택순)
 
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
 
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
 
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Clouddocker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
 
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
 
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
 
[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법
 
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
 

Plus de Jay Park

(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?Jay Park
 
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지Jay Park
 
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)Jay Park
 
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)Jay Park
 
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)Jay Park
 
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략Jay Park
 
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학Jay Park
 
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드Jay Park
 
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰Jay Park
 
(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임Jay Park
 
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결Jay Park
 
(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서Jay Park
 
(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람Jay Park
 
(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린Jay Park
 
(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의Jay Park
 
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트Jay Park
 
(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다Jay Park
 
(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다Jay Park
 
(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트Jay Park
 
(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭Jay Park
 

Plus de Jay Park (20)

(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지
(독서광) 쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지
 
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)
(독서광) LEAN HR - 당신의 스타트업은 안녕하십니까 (한빛미디어 2024)
 
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)
(독서광) 구술 문화와 문자 문화: 출간 30주년 기념판 (전후 해제 포함)
 
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)
(독서광) 테드 창의 숨 (아홉 가지 단편/중편 SF 과학 소설 모음집)
 
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략
(독서광) 이제는 이기는 인생을 살고 싶다 - 적을 만들지 않고 단번에 갈등을 풀어내는 백전백승 변호사의 지혜지략
 
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학
(독서광) 프로덕트 매니저 원칙: 10년이 가도 변하지 않을 PM/PO로 살아가는 원칙과 철학
 
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드
(독서광) 개발자로 첫 출근했어요 - 사내 개발 도구, 기술, 문화 적응 가이드
 
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
(독서광) 책 vs 책: 코딩 테스트 합격자 되기 vs 파이썬 알고리즘 인터뷰
 
(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임(독서광) 테니스 이너 게임
(독서광) 테니스 이너 게임
 
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
(독서광) 인간 vs. AI 정규표현식 문제 풀이 대결
 
(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서(독서광) 모던 리눅스 교과서
(독서광) 모던 리눅스 교과서
 
(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람(독서광) 상자 밖에 있는 사람
(독서광) 상자 밖에 있는 사람
 
(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린(독서광) 자바 알고리즘 인터뷰 with 코틀린
(독서광) 자바 알고리즘 인터뷰 with 코틀린
 
(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의(독서광) 리그 오브 레전드 플레이어 중심주의
(독서광) 리그 오브 레전드 플레이어 중심주의
 
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
(일상다반사) 2023년 구독자 3,000명 돌파 이벤트
 
(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다(독서광) 오늘날 우리는 컴퓨터라 부른다
(독서광) 오늘날 우리는 컴퓨터라 부른다
 
(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다(독서광) 사실은 이것도 디자인입니다
(독서광) 사실은 이것도 디자인입니다
 
(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트(독서광) 프로덕트 매니지먼트
(독서광) 프로덕트 매니지먼트
 
(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭(독서광) 슬기로운 파이썬 트릭
(독서광) 슬기로운 파이썬 트릭
 

[설치의 정석] EC2에서 워드프레스 설치하기

  • 1. [설치의 정석] EC2에서 워드프레스 설치하기 박재호(jrogue@gmail.com)
  • 2. 참고 자료 • <컴퓨터 vs 책> 블로그 • http://jhrogue.blogspot.com/ • OKdevTV 유튜브 방송 • 오늘자 방송: https://www.youtube.com/watch?v=T8FWtyrC1i0&list=PLdntWJk2tJPJe12 b_ZV4RnUlMLymtHkvG&index=2 • 설치의 정석 리스트: • https://www.youtube.com/playlist?list=PLdntWJk2tJPJe12b_ZV4RnUlMLymtHkvG • 슬라이드 셰어 • https://www.slideshare.net/jrogue/presentations • ASCIINEMA • https://asciinema.org/~jrogue
  • 3. 오늘 소개할 내용 • EC2에서 워드프레스 설치하기 • LAMP 스택 + WP • 데이터베이스 구성과 설정 파일 • 주의: • 최소 단계로 꼭 필요한 프로그램만 설치한다 • 내가 무엇인지 모르는 행위는 하지 않는다!!!
  • 4. EC2 설정(1) • 설치의 정석이므로… EC2는 plain vanilla
  • 5. EC2 설정(2) • 보안 그룹에 80(HTTP) 추가
  • 6. 몇 가지 힌트 • LAMP 설치 과정에서 단계별로 점검해야 한다! • 어디서 잘못되었는지 초기에 인지할 필요가 있음 • 접근 허가에 특히 주의! /var/www/html • 참고: https://chmodcommand.com/chmod-2775/ • WP salt에 주의 • https://kinsta.com/knowledgebase/wordpress-salts/ • 로그인할 때 브라우저 쿠키에 안전하게 저장할 목적으로 사용하는 키 • 플러그인으로 처리할 수도 있지만… 정석이니까 wp-config.php에서 수작 업으로 편집
  • 7. 스크립트(1) $ sudo yum update -y $ sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2 $ sudo yum install -y httpd mariadb-server $ sudo systemctl start httpd $ sudo systemctl enable httpd $ sudo systemctl is-enabled httpd 1단계_ LAMP 설치 $ curl localhost $ sudo usermod –a –G apache ec2-user $ exit # 다시 로그인 한다 $ groups $ sudo chown –R ec2-user:apache /var/www $ sudo chmod 2775 /var/www && find /var/www –type d –exec sudo chmod 2775 {} ; $ find /var/www –type f –exec sudo chmod 0664 {} ; $ cd /var/www $ echo “<?php phpinfo(); ?>” > /var/www/html/phpinfo.php $ curl localhost/phpinfo.php $ rm /var/www/html/phpinfo.php 2단계_ 그룹 추가 후 아파치 디렉토리 접근 권한 변경
  • 8. 스크립트(2) $ sudo systemctl start mariadb $ sudo mysql_secure_installation $ sudo systemctl enable mariadb $ sudo yum install php-mbstring -y $ sudo systemctl restart httpd $ sudo systemctl restart php-fpm $ cd /var/www/html $ wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz $ mkdir phpMyAdmin && tar xvpfz phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1 $ rm phpMyAdmin-latest-all-languages.tar.gz $ sudo systemctl start mariadb $ curl localhost/phpMyAdmin 3단계_ MariaDB 설정, phpMyAdmin 설치 $ cd $ mkdir src $ cd src $ wget https://wordpress.org/latest.tar.gz $ tar xvpfz latest.tar.gz $ mysql -u root -p mysql> CREATE USER ‘wpuser'@'localhost' IDENTIFIED BY 'your_strong_password'; mysql> CREATE DATABASE `wpdb`; mysql> GRANT ALL PRIVILEGES ON `wpdb`.* TO ‘wpuser’@’localhost’; mysql> FLUSH PRIVILEGES; mysql> exit 4단계_ WP 설치
  • 9. 스크립트(3) $ cd wordpress/ $ cp wp-config-sample.php wp-config.php $ wget --output-document=salt.txt https://api.wordpress.org/secret-key/1.1/salt/ $ vi wp-config.php define('DB_NAME’, wpdb'); --> 수정 define('DB_USER', ‘wpuser'); --> 수정 define('DB_PASSWORD', 'your_strong_password'); --> 수정 <<<<<<<<<<<<<<< 앞서 wget으로 얻은 salt.txt 내용으로 변경한다 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> define( 'AUTH_KEY', 'put your unique phrase here' ); define( 'SECURE_AUTH_KEY', 'put your unique phrase here' ); define( 'LOGGED_IN_KEY', 'put your unique phrase here' ); define( 'NONCE_KEY', 'put your unique phrase here' ); define( 'AUTH_SALT', 'put your unique phrase here' ); define( 'SECURE_AUTH_SALT', 'put your unique phrase here' ); define( 'LOGGED_IN_SALT', 'put your unique phrase here' ); define( 'NONCE_SALT', 'put your unique phrase here' ); 5단계_ WP 설치 $ cd .. $ cp -a wordpress/ /var/www/html/ $ sudo vi /etc/httpd/conf/httpd.conf <Directory "/var/www/html"> 영역에서 다음을 수정 AllowOverride None → ALL $ sudo systemctl restart httpd 6단계_ WP 설정