CI 묻고 답하기

제목 웹서버와 이미지서버가 다를 때 이미지 업로드 문제
글쓴이 태군 작성시각 2013/10/08 15:56:09
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 26252   RSS
 안녕하세요? 포럼 게시물을 계속 보고 있는데 해답을 찾기가 어려워
도움을 받고자 질문드립니다.

A라는 웹서버가 있고 B라는 이미지서버가 있습니다.

B에는 이미지업로드 기능을 하는 공용 파일이 있습니다.
폼으로 B 이미지서버의 특정 파일로 날려주면 파일이 업로드 되고 DB에 저장이 되는 구조입니다.

이번에 CI를 해보고 있는데요.
CI에서 B서버에 폼으로 날리게되면 url이 변경되게 되어서 그 뒤부터 처리를 어떻게 해야할지 모르겠습니다.

기존 방식을 사용하면서 할수 있는 방법이 있는것인지? 
아니면 FTP로 파일 업로드 부분과 DB저장 부분을 분리해야하는지 궁금합니다.

제가 이제 시작하는 초보라 아직 미숙하여 도움을 받고싶습니다.
좋은 방법 공유 부탁드립니다.
(-_-)(_ _)(-_-)
 다음글 [에러] Array to string conversio... (3)
 이전글 다음에디터 붙여 보신 분 계시면 정보 좀 주시면 감사하... (7)

댓글

한대승(불의회상) / 2013/10/08 16:13:17 / 추천 0
FTP 함수를 이용해서 이미지 서버로 보내 주는 방법이 1번째로 떠 오르는군요.

더 좋은 방법은 아래분이....
변종원(웅파) / 2013/10/08 16:30:10 / 추천 0
ci라고 하더라도 바뀌는 로직은 없습니다.

웹서버가 ci이고 이미지서버는 예전방식이라면 예전 주소로 post전송하면 되고
이미지서버를 ci로 바꿨다면 바뀐 ci주소로 post전송하면 됩니다.

주소가 바뀌는 것이지 ci로 만들었다고 기능이 달라지거나 방식이 바뀌는 건 아닙니다.
태군 / 2013/10/08 16:45:41 / 추천 0
A서버에만 CI가 세팅되어져 있는 상태일 때
 
http://www.A서버.com/AAA 에서 http://www.B서버.com/BBB로 post전송을 하게되면
url주소가 http://www.B서버.com/BBB게 바뀌게 되지않나요?

이렇게되면 A서버에 있는 CI의 컨트롤러가 제어를 못하게되는 현상,
업로드 까지는 문제 없지만 업로드 후 그 결과에 따른 처리 방법을 질문드린거예요.

제가 설명을 잘 못했네요.ㅎㅎ 
변종원(웅파) / 2013/10/08 16:53:04 / 추천 0
A 서버에서 curl로 처리하시거나 ajax로 처리할 수 있습니다.

아직도 이해가 안되는게 ci던 아니던간에 그전에는 어떻게 처리하셨는데요?

a.com/a.php에서 b.com/b.php에 post전송하셨을테고

그게 a.com/a 에서 b.com/b.php로 전송하는걸로 바뀐 것이구요.

b.com/b.php 에서 파일복사하고 db에 넣고 a.com/a.php를 다시 호출했겠죠?
그게 a.com/a 로 바꾸기만 하면 되는겁니다.
/ 2013/10/08 17:06:38 / 추천 0


방법은 많아서 선택하기 나름이겠지만...

굳이 이미지 서버에 post로 전송을 해줘야 되는게 아니라면 

a서버에서 b서버의 디렉토리를 네트워크 마운트로 해주고 그냥 업로드시에 저장하시면

두군데에서 공용으로 파일을 다 쓰실수 있겠죠?


b서버로 post 전송을 해줘야 하는게 현재 정책이라면

웅파님이 말씀해주신대로 ajax를 쓰는법도 있겠고 b서버 url로 post로 보낼수도 있으며


url이 바뀌기 싫은 경우는 

제가 한번 이런경우 작업을 해보았는데

a서버에서 post로 전부 받아오신 이후에

php내에서 b서버를 접속하여 post로 전달받은 내용들을 다시 보내주는 방법을 썼었습니다.




저는 크게 이렇게 3가지 방법 정도가 떠오르네요

물론 정책에 따라 다른 로직이 들어갈 수도 있겠지만요

변종원(웅파) / 2013/10/08 18:45:40 / 추천 0
저도 nfs 마운트 해서 네트워크 디렉토리로 사용합니다.

L4 -  관리서버 3대 에서 특정서버의 특정 볼륨을 nfs마운트하여
어떤 관리서버에서 접속하더라도 이미지 저장위치는 동일하고 db입력 로직은 각 관리서버에서 처리하고
이미지 저장위치를 img.domain.com 으로 연결하여 사용합니다.