- 아마존 웹 서비스, AWS(Amazone Web Service)의 우분투 서버에 설치



//================

* Nginx 웹서버 설치


nginx 웹서버 설치 (ubuntu)

https://hue9010.github.io/aws/nginx%EB%A5%BC-%EC%A0%81%EC%9A%A9%ED%95%B4-%EB%B3%B4%EC%9E%90/


- 서버 업데이트

sudo apt-get update


- nginx 서버 설치(php, mysql 포함)

sudo apt-get install nginx

sudo apt-get install -y  redis-server redis-tools


- nginx 서버 삭제

apt-get remove nginx

apt-get purge nginx  (설정파일도 삭제)


- 서버 제어

sudo service nginx start : 시작

sudo service nginx stop : 정지

sudo service nginx restart : 재시작

sudo service nginx reload : 설정파일을 재로드

sudo service nginx status : 현재 상태


- 버전확인

nginx -v



//===============================

- 서버 설정

sudo nano /etc/nginx/sites-enabled/default


root 경로;


server_name 도메인 이름;


location / {

# First attempt to serve request as file, then

# as directory, then fall back to displaying a 404.

try_files $uri $uri/ /index.php?$query_string;

}


location ~ \.php$ {

                try_files $uri /index.php =404;

                fastcgi_split_path_info ^(.+\.php)(/.+)$;

                fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;

                fastcgi_index index.php;

                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

                include fastcgi_params;

}


설정후 서버 재시작



//===============================

- AWS 인스턴스 보안 설정(포트 열기)

AWS , EC2 대쉬보드 -> 인스턴스 선택 -> 보안 그룹 -> 인바운드 규칙 추가

-> HTTP, HTTPS 추가




//================

* PHP 설치

https://www.rosehosting.com/blog/install-php-7-1-with-nginx-on-an-ubuntu-16-04-vps/


- php 버전 확인

php --version

웹에서 <? phpinfo(); ?>



- 현재 서버에 준비 돼어 있는 php 관련 패키지 조회

sudo dpkg -l | grep php | tee packages.txt



- php7.1이 없다면 최신 패키지로 업데이트

sudo apt-get install software-properties-common

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update



- php 7.1 설치

sudo apt-get install php7.1 php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm php7.1-xml php7.1-sqlite3 php7.1-curl php7.1-readline php7.1-intl



- 설정 파일 수정

sudo nano /etc/php/7.1/fpm/php.ini

sudo nano /etc/php/7.1/cli/php.ini


cgi.fix_pathinfo=0


;메모리 조정 128M~512M

memory_limit = 512M


;에러 표시

error_reporting = E_ALL

display_errors = On


//=================

- fpm 서비스 재시작

sudo systemctl restart php7.1-fpm.service




//===============================================

* MySQL 설치


AWS EC2 인스턴스 직접 설치 (RDS 미사용)

- 서버 로컬에 MySQL 설치 - ubuntu


- 설치

sudo apt-get update

sudo apt-get install mysql-server


- 설정

mysql_secure_installation


- 서버 제어

systemctl status mysql.service


systemctl restart mysql.service

systemctl stop mysql.service

systemctl start mysql.service



* EC2 인스턴스에 외부접속 가능하도록 설정

- 보안그룹 설정

- 인스턴스 선택 -> 보안그룹의 이름 클릭 

-> 인바운드 탭 -> 편집 버튼 

-> 규칙 추가 ->  MYSQL/Aurora TCP 3306 선택 -> 저장


- mysql 외부 접속 가능 설정

nano mysql.conf.d/mysqld.cnf

bind-address = 0.0.0.0



* 사용자 추가( 모든 권한, 외부 접속 가능 )

sudo mysql -uroot -p



CREATE USER 'ubuntu'@'localhost' IDENTIFIED BY 'userpass';

CREATE USER 'ubuntu'@'%' IDENTIFIED BY 'userpass';


GRANT ALL PRIVILEGES ON *.* to ubuntu@localhost IDENTIFIED BY 'userpass' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* to ubuntu@'%' IDENTIFIED BY 'userpass' WITH GRANT OPTION;


FLUSH PRIVILEGES;




//===============================================
AWS RDS 사용 방법
MySQL DB 인스턴스를 만들고 MySQL DB 인스턴스의 데이터베이스에 연결

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.MySQL.html


- DB 인스턴스 만들기

- 서비스 -> RDS


- DB 접속 (Navicat)

Amazon RDS -> 생성된 DB 인스턴스 선택 -> '엔드포인트'가 Host 접속 주소



- MySQL 버전 확인 방법

mysql --version


- or,  DB 접속후 콘솔 실행

SHOW VARIABLES LIKE "%version%";




- 인스턴스 보안 설정(접속 가능 IP 열기)

Amazon RDS  -> 인스턴스 선택 -> 보안 그룹 -> 인바운드 규칙 추가

-> 편집 -> 규칙추가 -> MySQL/ Aurora , 소스:위치무관


- 웹서버와 연동(웹서버, PHP 설치후)

- 웹서버(EC2 인스턴스)와 DB (RDS 인스턴스) 접속

sudo apt-get install  mysql-client php7.1-mysql




//==========================================

* apt 명령 사용법


- Ubuntu's Advanced Packaging Tool

- apt는 apt-get과 apt-chche를 합친 유틸


apt update : 패키지 정보만 업데이트

apt upgrade : 설치된 패키지 최신버전으로 업그레이트

apt full-upgrade : 시스템 업그레이드


apt install 패키지 : 패키지 설치


apt remove 패키지 : 패키지 삭제 , 설정파일은 지우지 않음

apt purge 패키지 : 패키지 삭제 , 설정까지 지움


apt autoremove : 현재 사용되지 않는 패키지를 제거


apt list : 전체 패키지 리스트 보기

–installed 설치된 패키지 목록 조회

apt show 패키지 : 패키지 정보 보기

apt search 패키지 : 



'Code' 카테고리의 다른 글

라라벨 설치 및 설정  (0) 2018.09.27
라온 보드 수동 설치  (0) 2018.09.25
Nginx, PHP, MySQL 설치 (AWS EC2 Linux) [2018.09]  (0) 2018.09.20
Nginx, PHP, MySQL 설치 (윈도우 OS) [2018.09]  (0) 2018.09.20
C# 과 Java 성능 비교  (0) 2016.07.05
닷넷 프레임워크 역사  (0) 2016.06.22
Posted by 코덴스

댓글을 달아 주세요