2016. 6. 15. 22:56ㆍEtc/경험담
안녕하세요?
이번시간에는 CMS 툴에서 필요한 CSV 파일 컨트롤러를 만들면서 경험한 일들을 설명하고자 합니다.
먼저 사용자의 요구사항은 다음과 같습니다.
1. CSV 를 업로드 할 수 있어야한다.
2. 업로드된 CSV 가 자동으로 Push 될 수 있어야한다.
3. 업로드된 CSV 리스트를 확인가능하고, 해당 CSV 를 선택하여 다시 적용할 수 있어야한다.
CSV 업로드 및 리스트 제공은 쉬웠습니다. 그러나 git 에 push 를 하기위해서는 권한문제가 생겼습니다.
포인트는 간단합니다.
www-data 라는 user 를 생성하고.
www-data 의 id_rsa 를 생성한 후
해당 id_rsa.pub 값을 git 의 ssh-key 에 등록해줍니다.
이후 php 의 exec() 함수를 이용하여 git 을 add,commit,push,pull 할 수 있었습니다.
감사합니다.
다음은 제가 사용한 명령어들의 리스트를 간단한 설명들로 표현해보겠습니다.
1. www-data 의 ssh-key 생성
sudo -u www-data ssh-keygen -t rsa
2. www-data 유저의 권한으로 git 커맨드 사용
sudo -u www-data git <command>
결과 화면입니다.
이번 경험의 요점은 권한 설정입니다.
결국 웹에서 컨트롤시에 사용되는 유저는 `www-data` 이므로, `www-data` 가 git 에 대한 permission 을 부여받게 해주는 것이 포인트였습니다. 추가적으로, 저의 경우 apache가 아닌 nginx 를 사용하였습니다.
다음이시간에는 더 유익한 정보로 찾아오도록 하겠습니다.
감사합니다.
'Etc > 경험담' 카테고리의 다른 글
[APK] Unsigned APK to Signed APK (0) | 2016.08.11 |
---|---|
[Node.js] 설치 및 NPM 설치 (0) | 2016.07.23 |
[Terminal] 간단한 파일명 변경 명령어 (0) | 2016.06.14 |
[Android,Unity] Logcat 보기 (0) | 2016.06.07 |
[Unity] Prime31 IAP,IAB 사용하기 (0) | 2016.05.25 |