api 서버 만들기 1

주말동안 밤새면서 만들던 작업 정리

  1. mysql 과 phpmyadmin 설치를 통해 나만의 DB 만들기

ec2에 이것저것 설치하면서 과거 배웠던 php나 db커넥트 방식을 다시 써보게 되서 감회가 새롭다.
자세한 설치 방식은 apt-get 형식으로 php-fpm 을 설치하였고 php-cil 그리고 phpmyadmin 설치

1
2
3
$ sudo apt update
$ sudo apt install phpmyadmin

  1. phpmyadmin
    DB작성은 예전 많이 해서 문제는 없었는데 mysql 업데이트로 파티션 나누는 방식이 생겨 언제 한번 공부를 생각중이다. 지금은 할게 많아서…

upload successful
primary key 설정과 auto increment 설정은 따로 지정하였다. 한국어로 쓸 예정이라 데이터 정렬은
utf8mb3 일반으로 설정하였다.

  1. php 형식으로 GET,POST 받아보기 테스트
    nginx를 사용하여 예전 사용했던 아파치 서버의 .htaccess 를 사용하지 못해 아직도 GET 방식만 성공할수 있었다. 다른 방식이 있나 언제 시간나면 다른 분들께 물어볼 예정

GET 방식은 아래와 같은 방식으로 받아보았다.

upload successful

1
2
3
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: *");
header("Access-Control-Allow-Methods: *");

Access-Control-Allow-Origin을 통해 CORS 문제를 방지하였고 sql문을 통해서 전체적인 내용이 나오도록 처리하였다. 혹시 id를 개별로 GET방식으로 쿼리를 날렸을때는 따로 볼수있도록 처리해보았다.
laravel 이 되었다면 이런 하나하나 짤 필요도 없을것은 엄청 고생해서 설정하게 되었다.

  1. remote ssh 사용을 통해 좀더 원할하게 서버 접근가능하게 하기

upload successful

vscode 확장기능을 통해서 설치하였고 설정방식은 윈도우라면 ctrl+shift+p를 하고 remote ssh의 내용을 체크한뒤 비밀키 장소를 설정하고 도메인주소를 입력하면 성공적으로 동작할 것이다.

  1. 생각보다 너무 오래 걸려서 좀 더 쉽게 api 서버를 만들 방법을 찾는중

생각보다 aws 람다식과 게이트웨이 방식으로 쉽게 만들수 있다는 이야기가 있어서 현재 공부중인데 이것보다 엄청 간단한것같다. 다 만들어진다면 한번 블로그에 정리할 예정이다.

그 외 여러가지 문제 생긴 것 공유

  1. npm은 여전히 동작하지 않는다.
    아직도 이유를 모르겠다
  2. curl 도 동작하지 않는다
    이것도 이유를 모르겠다. apt-get이 된다는건 보안상 문제는 아닌 것으로 생각되는데..