• 목록
  • 아래로
  • 위로

안녕하세요?


오늘 하루는 잘 보내셨는지요? ^^


다름이 아니라 웹호스팅에서 다른 서버에 있는 CSV 파일을 불러오는 방법에 대해 질문 드려요~



제가 사용하는 웹호스팅에서 파이썬을 지원하지 않기 때문에


부득이 다른 VPS에서 파이썬으로 생성한 CSV 파일을 웹호스팅으로 불러오려고 하는데요.

(양쪽 모두 제가 사용하는 계정이고, 추가로 프로그램을 설치할 여유 공간과 리소스가 있습니다)


이런 경우에는 보통 어떠한 방법으로 파일을 불러오는지 제가 전혀 감을 못 잡겠네요 ㅠㅠ



막연하게 드는 생각이 다음과 같은 방법이 아마도 가능할 것 같습니다.

(실제로 불가능한데 저 혼자만의 상상 속에서 가능한 방법인지도 모르겠네요 ^^;)


1. VPS에서 아파치나 NGINX를 구동하여 웹서버의 PHP 파일에서 CSV 파일을 불러오는 방법

(웹호스팅 서버 측에서 file_get_contents를 막아놓아서 cURL을 이용해야 할 것 같네요 ㅠㅠ)


2. cPanel의 크론탭을 이용하여 CSV 파일 자체를 웹호스팅으로 다운받는 방법

(다만 제가 cPanel의 크론탭을 사용해본 적이 없네요 ㅜㅜ)


3. Owncloud 등 설치형 클라우드 프로그램으로 CSV 파일을 동기화하는 방법



제가 미처 생각하지 못한 더 좋은 방법이 있을 것 같네요 ㅜㅜ


답변 달아주실 분께 미리 감사드립니다 ^^


그럼 편안한 저녁 되세요~!




작성자
이니스프리 119 Lv. (0%) 1876250/115200000EXP

당분간 일신상의 사정으로 쪽지나 댓글로 답변을 드리기 어렵습니다. 죄송합니다.

 

CSVpuymXAAAVVpd.jpg

댓글 9

title: 황금 서버 (30일)humit
profile image

얼마나 큰 파일인지는 모르겠지만 자주 읽을 필요가 있는 csv 파일인 경우에는 서버에 저장을 하는 방식으로 하시면 됩니다.

 

아무래도 csv 파일을 불러오는지에 따라서 구현이 달라질 필요가 있을 것 같네요.

 

비정기적으로 csv 파일을 불러와야 한다면 1번 방식을 택하는 것이 좋습니다.

 

매 시간과 같이 정기적으로 불러오게 된다면 2번 방식을 택하는 것이 좋습니다. 애초에 cron job이 일정한 주기마다 실행하는데 도움을 주는 것이라 생각하시면 됩니다. 하지만 csv 파일을 서버에 저장하는 로직은 직접 구현하셔야 합니다.

 

매우 짧은 시간마다 csv 파일이 업데이트가 되어야 한다면 3번 방식을 택하는 것이 괜찮아보이네요.

 

아니면 csv 파일을 생성하는 부분에서 파일 생성이 끝난 경우 csv 파일을 보여주고자 하는 서버에 데이터를 전송하여 저장하는 방법이 있겠네요.

comment menu
2018.10.24. 18:18

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → humit
profile image

humit 님 안녕하세요? 저녁식사는 맛있게 하셨는지요? ^^

군 복무 중이라서 바쁘실텐데 이렇게 댓글 남겨주셔서 정말 번번이 감사합니다!

 

일단 파일을 비정기적으로 불러와도 될 것 같아요 :)

말씀해주신대로 1번 방법으로 해보겠습니다.

나중에 다른 사이트에서 유사한 작업을 또 하게 될 것 같은데요.

그 때에는 거의 실시간으로 업데이트가 되어야해서 말씀해주신대로 3번 방법으로 하겠습니다 ^^

 

그런데 답변해주신 내용 중에서

"csv 파일을 생성하는 부분에서 파일 생성이 끝난 경우 csv 파일을 보여주고자 하는 서버에 데이터를 전송하여 저장하는 방법"은

제가 전혀 생각하지 못한 방법이네요 ^^

여쭤보길 잘 했네요! 정말 감사합니다~!

 

구글링해보니 다음과 같은 스크립트가 있던데 대략 이런 방법을 말씀하신거죠?

제가 이번 주말에 더 공부해보겠습니다 :)

import subprocess

filepath = "some/complete/path/to/file"

hostname = "user@remote_system"

remote_path = "some/remote/path"

subprocess.call(['scp', filepath, ':'.join([hostname,remote_path])])

출처: https://stackoverrun.com/ko/q/2132293

 

바쁘신데 번번이 감사합니다!

그럼 humit 님께서도 환절기에 감기 조심하시고 편안한 저녁 되세요 ^-^

comment menu
2018.10.24. 18:34

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit → 이니스프리
profile image

아마 웹호스팅에서는 scp 명령어로 업로드하는 것을 지원해주지 않을 것 같네요. 해준다면 저런 스크립트로 하시면 될 것 같네요.

 

제가 말한 방법은 웹호스팅에서 파일 업로드를 할 수 있는 환경을 만들어 놓고, (보안 문제가 있으니까 ip주소를 체크해서 VPS IP 주소가 아닌 경우에는 종료해서 업로드가 되지 않게 하는 방식으로요)

csv 파일을 생성하고 있는 서버에서 requests 모듈을 이용해서 파일 업로드를 하는 방식으로 구현하시면 되겠습니다 :)

 

comment menu
2018.10.24. 18:40

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → humit
profile image

앗 requests를 이용하면 되는군요 ^^

다행히 Stackoverflow 등에 예시가 있네요 :)

이 방법으로 시도해볼게요~

말씀하신 보안 문제에 대해서는 $_SERVER['REMOTE_ADDR'])을 이용하는 방법에 대해 주말에 좀 더 공부를 해보겠습니다 ㅠㅠ

그럼 humit 님께서도 좋은 저녁 되세요!

다시 한 번 진심으로 감사드립니다~!

comment menu
2018.10.24. 18:55

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit → 이니스프리
profile image

넵넵 ㅎㅎㅎ 하시다가 모르시겠으면 댓글 달아주세요.

comment menu
2018.10.24. 18:59

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

NoYeah
profile image

CSV 파일이 비공개 되어야 하는 파일인가요?

 

공개되어도 상관없다면 git을 이용해보는 방법도 좋을것 같습니다.

학생 신분이 있다면 git을 비공개 용도로도 사용할 수 있는 걸로 알고 있습니다.

 

 

CSV파일이 얼마나 갱신이 자주되는지 궁금합니다.

상시 갱신되는 정보라면 VPS서버에서 바로 불러오게 하는 방식이 좋을 것 같고

특정 시간에 갱신이 되거나 갱신되는 텀이 1~2시간 이상이 걸리는 거라면 정기적으로 크론탭 기능을 이용해서 rsync 로 동기화를 해도 됩니다.

rsync 의 경우 설치만 되어 있으면 복사속도도 빠르고 갱신이 되었을 때만 다운로드 하는 옵션도 있어서 상당히 편리할 겁니다.

 

 

공개되어도 상관없는 파일인지, 갱신 주기는 얼마나 되는지에 대한 정보가 더 있으면 좋을것 같습니다.

comment menu
2018.10.24. 21:01

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → NoYeah
profile image

맛스타 님~ 요새 회선 때문에 바쁘실텐데 답변해주셔서 감사합니다 ^^

제가 경험이 없어서 파일의 공개 여부나 갱신 주기까지는 미처 생각을 못 했네요 ㅠㅠ

일단 이번에 시도해보려는 작업에서는 파일은 공개되어도 무방하고

(구글링만 하면 나오는 공개된 정보입니다)

갱신 주기는 1시간 정도로 생각하고 있습니다.

(VPS에서 크론탭을 이용해서 파이썬으로 CSV 파일을 1시간 주기로 생성하려고 합니다)

 

제가 주로 윈도우에서만 싱크프로그램을 사용해본 경험이 있어서

rsync를 거의 사용해보지 않았는데 이번 기회에 한 번 연습해봐야겠네요.

그리고 git을 사용하는 방법도 알아보겠습니다.

(현재는 제가 대학원에 등록을 안 한 상태여서 비공개는 어렵겠네요)

 

다음 번에는 거의 실시간으로 파일을 갱신해서 불러와야 하는 작업도 해야되고

유일한 정답이 있는 문제는 아닌 것 같으니 연습차원에서 다양한 방법으로 시도해보겠습니다.

그럼 맛스타 님께서도 편안한 저녁 되시고 감기 조심하세요~!

항상 감사드립니다 ^-^

comment menu
2018.10.24. 21:39

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

모여라꿈동산

웹서버 쪽에서 사용하실꺼면 db를 보통 제공할테니

파이썬으로 csv를 만들지 말고 웹서버쪽 db로 바로 입력하는 것은 안될까요?

외부 db 접속이 막려있을까요?

ftp가 가능하다면 ftp로 웹서버쪽에 업로드하는 방법도 가능할 것 같구요.

comment menu
2018.10.25. 06:55

신고

"모여라꿈동산님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → 모여라꿈동산
profile image

모여라꿈동산 님 안녕하세요?

답변해주셔서 감사합니다!

말씀하신 방법이 웹호스팅 측에서 지원만 해준다면 간명하고 확실한 방법이긴 하네요 ^^

제가 외부 DB 접속이 가능한지 여부를 확인해보겠습니다.

그럼 점심식사 맛있게 드세요 :)

comment menu
2018.10.25. 11:10

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 376
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4060
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4464
802 DB Charset 관련해서 질문 드려요! 4 이니스프리 20.10.01.22:22 137
801 워드프레스 오류가 있습니다 6 국내산라이츄 20.09.29.23:55 112
800 노트북 구매와 관련해서 질문 드려요! 6 이니스프리 20.09.22.10:14 123
799 php 오류페이지 설정? 1 Ruwaku 20.09.21.18:24 143
798 회원만 댓글창이 보이고 작성가능한 게시판의 코드를 비회원도 볼수있게 수정하고싶습니다 2 손가락개 20.09.21.01:59 211
797 그누보드5 는 php 몇버전이 적당한가요? 4 핫슈 20.09.20.08:20 370
796 포어스 호스팅 신청할 때 다른데서 도메인을 먼저 받아와야 하나요? 3 손가락개 20.09.11.12:28 114
795 php5.4에서 만든 스킨을 7에서 적용하면 문제가 생기나요? 2 손가락개 20.09.10.14:06 86
794 infinity free무료호스팅 사용중인데 ftp연결을 거부합니다 9 image 손가락개 20.09.10.13:57 329
793 CentOS vsftp 윈도우 클라이언트에서 접속 불가 2 image 세종대왕 20.09.09.14:04 75
792 노트북 사설 수리 업체 문의 드립니다 2 이니스프리 20.09.06.21:42 279
791 PHP) 위키 문법 정규식 처리 관련 260578 20.09.06.20:59 64
790 크롬 브라우저 확장 프로그램 좋은게 뭐가있나요? 6 image 슬기 20.09.04.15:21 79
789 프론트엔드 외주 가격을 어느정도 책정해야 하는지 모르겠습니다. 2 Seia 20.09.01.21:58 1578
788 단축키(핫키) 좀 알려주세요. 6 슬기 20.08.30.12:36 111
787 php 모든 페이지에 적용하기? 1 Ruwaku 20.08.28.17:21 139
786 서버 관련해서 문의드립니다! 1 도돌이폰 20.08.27.09:55 89
785 우분투에서 타임존 변경 및 시간 설정에 대해 질문 드립니다. 9 이니스프리 20.08.12.13:58 186
784 crontab이 task를 전혀 실행하지 않네요 ㅠㅠ 8 image 이니스프리 20.08.11.16:50 416
783 [파이썬] concurrent.futures에서 ThreadPoolExecutor의 사용과 관련하여 질문 드립니다 4 이니스프리 20.08.09.14:16 85