https://xetown.com/tiptalk/1091765

 

위 팁을 읽고 정상적으로 적용은 완료했습니다만, 궁금한 점이 몇가지 있어서 질문드립니다.

 

1. jpg, gif, jpeg, png만 캐싱하도록 설정되어 있는데 mp4 까지도 캐싱하도록 설정하려면 어떻게 해야 할까요?

 

php에서 exif_imagetype 함수를 통해 보안체크를 하는 부분이 있던데, mp4파일은 보안체크 함수에서 걸려버려서 캐싱이 안 되는군요 ㅠㅠ

 

2. 라이믹스에서 에디터를 통해 이미지 파일 업로드 시 1차적으로는 본 서버에 업로드 되고, 글을 작성 후 글을 읽을 때에는 해당 주소가 xetown.com 에서 img.xetown.com 으로 자동 치환되도록 적용하려면 어떻게 해야 할까요?

  • Lv37

    1번은 해당 소스를 작성하신 분이 알려주시면 될 것 같고요...

     

    2번은 두 가지 방법이 있습니다. 간단한 애드온을 사용해서 본문 내용 중 특정도메인으로 연결되는 이미지 또는 mp4 주소를 모두 다른 도메인으로 치환해 주는 것, 그리고 원본 서버에 이미지 또는 mp4 파일을 요청하면 즉시 새 서버로 301 리다이렉트하는 것입니다. 에디터는 전혀 건드릴 필요 없습니다.

     

    사이트 주인이 모든 콘텐츠를 통제하는 개인 블로그가 아니라 불특정 다수가 게시물을 작성할 수 있는 커뮤니티 사이트의 특성상, 두 가지 방법을 병용해야 확실한 효과를 거둘 수 있습니다. 애드온을 통한 치환에만 의존하면 기존 게시물에서 원본 서버로 직접 연결되는 img 태그나 외부의 불펌에 대응할 수 없고, 반면 리다이렉트에만 의존하면 원본 서버에도 리다이렉트 트래픽이 계속 발생할뿐더러 두 번 접속하게 되니 속도도 느려집니다.

  • Lv37 ?
    답변 감사합니다. 1번은 php check mime 함수를 통해 video/mp4를 반환하면 보안 체크는 통과하도록 혼자서 해결했습니다.

    2번은 에디터에서 파일 업로드 후 자동 삽입이 될 때, img src 부분을 기존 도메인에서 이미지 서버 도메인으로 치환되도록 코드를 수정하려고 시도해보려고 합니다. 잘 될지는 모르겠네요 ㅠㅠ
  • ? Lv30
    이미지 업로드시 도메인을 원하는 도메인으로 해서 하는 것은 클라우드플레어를 이미지만 캐시하고 싶을때 적용하셨던 분이 계십니다.

    https://xetown.com/board/422382
  • Lv30 ?
    감사합니다~
  • ? Lv37

    에디터는 건드리지 마세요...
    워낙 민감한 놈이라... 잘못 건드리면 무척 귀찮아져요.

  • Lv37 Lv30
    본문과 댓글 안에 있는

    //도메인/files/attach/images



    //원하는서브도메인까지추가한//files/attach/images

    로 변환해주는 애드온이 나온다면

    트래픽때문에 고민이신 분들의 경우 클라우드플레어에 이미지만 캐시해서 이용할 수 있겠네요.


    클라우드플레어에서 서브도메인을 추가하고
    해당 서브도메인만 구름을 키고

    나머지는 구름을 끈다음

    본서버에서 서브도메인도 접속이 가능하게끔 조치를 해주면 되는거 같더군요.

    저 글을 볼때는 별 관심이 없어 자세히 안본거 같은데 대략 이런거 같네요.

    애드온만 있다면 쉽게 이미지만 캐싱할때 사용하고 안하고 가능하겠네요.
  • Lv30 Lv37

    이미지만 클플 쓰는 것은 클플 약관 위반입니다만, 실제로 얼마나 엄격하게 체크하는지는 모르겠습니다. 라엘님이 제시하신 것처럼 국내서버를 사용하는 방법에 비해 속도가 심하게 느려지는 면도 있고요.

    말씀하신 기능을 수행하는 애드온은 제가 비공개로 판매중입니다만, 위에 적었다시피 원본 서버에서 redirect 설정을 하고 캐시서버 세팅을 병행해야 제대로 효과를 얻을 수 있기 때문에 관련 의뢰가 있을 때만 제공하고 있습니다. 이미지만 클플 쓰는 것은 활용도가 너무 떨어져서요.

  • Lv37 Lv30
    아.. 비공개로 판매를 직접 하시고 계시군요.
    트래픽이 너무 고민이신 분들은 뭐 클라우드플레어에서 막을때 까지는 그래도 꽤 괜찮은 대안 같아서요.

    갑작스러운 방문자 증가로 트래픽만 우선 해결하려는 곳에서는 도움이 될 것 같아요.
    클라우드플레어 전체적용은 부담스러우니까요...
  • Lv30 Lv37

    네.. 적극 제재하지 않는다고 해도 다른 회사의 약관 위반을 주 목적으로 하는 애드온을 판매하기는 좀 그래서요. 예전에 XE타운 포인트마켓에도 이미지를 클플로 넘겨주는 자료가 있었던 것 같기도 하고요.

  • Lv37 Lv30
    저희도 갑작스러운 방문자 폭발! 로 잠시 해결하기 전에 클라우드플레어에 의존을 하게 된다면 사용해봐야 겠습니다. 그런 일이 생긴다면 당연히 서버를 옮겨야 하는 좋은 일이 생긴거지요 ㅋ
  • Lv37 ?

    아마존 라이트세일을 이용해서 캐싱용도로 사용하는 것도 약관 위반인건가요? ㅠㅠ

    애드온을 제작해서 최대한 코어수정없이 하면 업데이트도 용이하고 저도 좋지만, 실력이 없기에 에디터의 js 파일 중에 '이미지 자동 본문 삽입' URL만 수정해서 일단 구현했습니다.

     

    사실 트래픽은 부담이 없는데 사용중인 VPS업체의 회선 문제인지 이미지를 로딩할때 시간이 상당히 많이 걸려서 이미지 로딩속도 개선 목적으로 캐시서버를 구성하였습니다.

  • ? Lv30
    애드온 판매하신 다니 구매해서 적용하는게 좋을 것 같아 보이네요.
    그런데 지금 사용하신 서버도 클라우드플레어에 캐싱하는 것을 제공하는 것인가요?

    그렇다면 뭐 엎어지나 매치나 이긴 한데 ㅋ 이미지만 캐싱하는 것을 클라우드플레어에서 약관위반을 들어서 제제할 가능성은 낮아보이긴 합니다. 개인적인 생각이 그래요 ㅋ
  • Lv30 ?
    지금 사용하는 웹서버는 그냥 국내에서 우리는 승리한다! VPS를 이용 중입니다.
    이미지 캐시 php프로그램은 아마존 라이트세일을 이용하고 있구요
  • ? Lv30

    아니요. 아마존 라이트세일에서 가져간 이미지가 클라우드플레어에 의존하여 캐싱하냐고 질문 드린겁니다. 클라우드플레어 약관에 관해 물어보셔서....

     

    라이트세일 서버를 캐싱용도로 쓰던 본서버로 쓰던 정해진 한도에서 쓰면 이미지용이던 뭐던 굳이 질문하실 이유가 없어 보여서요.

  • Lv30 ?
    아하 ㅋㅋㅋ 아마존 라이트세일로 가져간 이미지는 별도의 캐싱을 하지 않고 그냥 라이트 세일에서 트래픽을 모두 담당하도록 해놓았습니다.
  • ? Lv30

    그렇다면 클라우드플레어,아마존 어느 곳에서도 간섭하거나 하지 않죠.

     

    그런데 그렇게 하면 트래픽 절감 효과도 없고 한데 굳이 하시는 이유가 있나요?

    아직 서버 자원이 부족한 정도의 규모도 아니신데요.

  • Lv30 ?
    VPS회선 상태가 좋지 못한지 이미지 로딩속도가 엄청 느려서 에디터에 파일을 첨부하면 이미지가 실제 글에 삽입되어 표시되기 전까지 상당한 시간이 소요되더라구요

    그래서 단순 아마존의 회선을 통해 이미지를 빨리 로딩하려는 목적입니다 =]
  • ? Lv30
    본서버가 그것도 국내서버가 더 느리다?? 뭔가 이상한 일이네요. 그렇다면 이렇게 하실게 아니라 서버를 옮기셔야 하는건 아닌지요.
  • ? Lv37
    라이트세일은 문제 없고, 클플은 약관 위반이예요.
  • Lv37 Lv30
    https://www.cloudflare.com/terms/

    궁금해서 약관에서 해당조항을 찾아보려 했는데 찾지 못했는데요. 어느부분인지 알 수 있을까요?
  • Lv30 Lv37
    제가 마지막으로 확인한 후에 약관이 대폭 수정된 것 같네요. 저도 못 찾겠습니다. 이제는 이미지만 클플을 써도 되는 걸까요? ㅎㅎ
  • Lv37 Lv30
    굳이 이미지만 사용하는 것을 제한할 이유도 없을 것 같습니다. 왜냐면 이미지가 실제 트래픽의 거의 대부분일 뿐더러 나머지 요소를 사용하지 않는다고 클플에게 큰 마이너스는 아닌듯 합니다.
    무료사용의 경우 트래픽이 과다하면 서비스를 거절할 수 있으니 이미지만 사용한다고 제한하는건 의미가 없어보이구요.

    약관에 없는 내용이라면 굳이 저희가 사용을 못한다고 예단할 필요는 없을 듯 합니다.

    imgru 처럼 CDN 용도가 아닌 것을 CDN처럼 사용하는 것을 막아야 할 필요학 있는 경우 약관에 그런 용도로 사용하지 말라고 넣겠지만..

    클라우드플레어는 용도 자체가 CDN이니 이미지만 사용하는 것을 따로 막을 필요가 없어보여요.
  • Lv30 Lv37
    네.. 자세히 읽어보니 그냥 (자기네 기준으로) 과도하게 사용하면 차단하겠다는 엄포로 대체된 것 같아요.
  • Lv8

    스킨의 _read.html 파일을 수정하면 된다고 하네요.
    https://xetown.com/rxe_tip/994064 이 글 코드를 응용.

  • Lv8 ?
    감사합니다~ 코드 자체는 이해가 가는데, img src 태그를 detect해서 치환하는 정규식을 아직 혼자서 작성하는 수준은 아니라 위 웹지기님 코드를 사용하기로 하였습니다.
  • ? Lv8
    이거 동작할것 같아요. https://xetown.com/qna/1092229