XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.
조회 수 69 댓글 21

일반 이미지는 등록시 자동으로 리사이즈 되는데요

gif는 리사이즈 되지 않고 그대로 올라가게 됩니다.

XETOWN 에서도 테스트 해보니 마찬가지네요.

그래서 그런지 고용량의 프로필 이미지를 올리시는 분들때문에 곤란합니다.

 

용량이 6메가 이상의 고용량의 프로필을 쓰다보니 댓글 쓰실때 나오는

프로필 사진이 나와서 그런분 몇분이 댓글만 써도 용량이 엄청 잡아먹게 됩니다.

서버도 느리게 할뿐더러 사용자한테도 데이터 부담을 주고 있습니다.

 

GIF를 제한하거나 GIF도 리사이즈 할 방법이 없을까요?

  • ?
    마신 2016.10.07 12:21:08

    <-- 테스트를 위해 6메가 gif 프로필 사진을 업로드한 상태입니다.

    해결되어 프로필 삭제 하였습니다.

  • profile
    웹지기 2016.10.07 12:22:37
    현재로서는 저도 이부분 확인했었는데 코어에서 수정해 주지 않으면 힘들 거 같아요. 저도 다소 아쉬운 점으로 생각하고 있습니다. 저는 개인적으로 gif 프로필이 올라오면 제가 확인을 한번씩 해보고 있습니다. 물론 가입이 엄청 많으신 사이트라면 골치꺼리 이시겠습니다.

    누가 이것 개선좀 시켜줬으면 좋겠습니다.
  • ?
    마신 2016.10.07 12:23:30
    파일이미지 첨부할때 처럼 용량 체크만 되면 될거 같은데 ㅠㅠ
  • profile
    웹지기 2016.10.07 12:24:45
    gif 이미지도 다른 포맷처럼 관리자가 설정한 사이즈로 리사이즈만 해줘도 리사이즈 과정에서 용량이 굉장히 줄어듭니다. 이렇게라도 되었으면 좋겠는데요.
  • ?
    마신 2016.10.07 12:25:50
    그러게요 아예 관리자가 설정한 사이즈 제한도 통과되버리더라구요.
  • profile
    웹지기 2016.10.07 12:30:31
    그러게요. 리사이즈를 못해준다면 지정된사이즈 초과 되었다고 거부를 하면 될텐데요.
    ex) 90픽셀로 제한이 되어 업로드한 파일은 프로필이미지로 사용이 불가능합니다.
  • ?
    마신 2016.10.07 16:01:09

    찾아보니 90 x 90 이상은 자동리사이즈 되게 되어있는데 언제부터 생긴 오류인지 그대로 유지된듯 합니다.

    이미지닉네임은 90 x 20 이상일때 GIF도 리사이즈가 정상 작동하는군요

  • profile
    웹지기 2016.10.07 16:07:58
    GIF도 설정대로 리사이즈 되었던게 예전 방식 일겁니다. 다만 서버에서 지원하지 않으면 애니메이션은 사라졌던 것으로 기억되요.

    하지만 언제부터인가 리사이즈 자체가 안되는 현사이 발생하고있는 듯 합니다.
  • profile
    고수군 2016.10.07 12:26:28
    고용량 움짤이 요즘 많아서 개선이 필요한 것 같네요. (GIF 제한을 임시로 사용하거나)
  • profile
    socialskyo 2016.10.07 14:27:10
    어랏...gif는 리사이즈 제한이 적용이 안되었나요?? 몰랐네요.. 헐
  • ?
    마신 2016.10.07 15:23:56

    테스트 해보니 이미지닉네임은 GIF 등록시 일정크기(90x20로 예상됨)까지는 그대로고 그이상은 자동으로 리사이즈 되네요

     

    member.controller.php 파일에 이미지닉네임 리사이즈 부분인데요
    이걸 프로필에 이용하면 될듯 한데... 어떻게 해야 할까요?

    ========================================================

    이미지닉네임 리사이즈 부분


    function insertImageName($member_srl, $target_file)
    {
    // Check uploaded file
    if(!checkUploadedFile($target_file)) return;

    $oModuleModel = getModel('module');
    $config = $oModuleModel->getModuleConfig('member');
    // Get an image size
    $max_width = $config->image_name_max_width;
    if(!$max_width) $max_width = "90";
    $max_height = $config->image_name_max_height;
    if(!$max_height) $max_height = "20";
    // Get a target path to save
    $target_path = sprintf('files/member_extra_info/image_name/%s/', getNumberingPath($member_srl));
    FileHandler::makeDir($target_path);

    $target_filename = sprintf('%s%d.gif', $target_path, $member_srl);
    // Get file information
    list($width, $height, $type, $attrs) = @getimagesize($target_file);
    // Convert if the image size is larger than a given size or if the format is not a gif
    if($width > $max_width || $height > $max_height || $type!=1) FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, 'gif');
    else @copy($target_file, $target_filename);
    }

     

    ========================================

    프로필 리사이즈 부분

     

     function insertProfileImage($member_srl, $target_file)
     {

      // Check uploaded file
      if(!checkUploadedFile($target_file)) return;

      $oMemberModel = getModel('member');
      $config = $oMemberModel->getMemberConfig();

      // Get an image size
      $max_width = $config->profile_image_max_width;
      if(!$max_width) $max_width = "90";
      $max_height = $config->profile_image_max_height;
      if(!$max_height) $max_height = "90";
      // Get a target path to save
      $target_path = sprintf('files/member_extra_info/profile_image/%s', getNumberingPath($member_srl));
      FileHandler::makeDir($target_path);

      // Get file information
      list($width, $height, $type, $attrs) = @getimagesize($target_file);
      if(IMAGETYPE_PNG == $type) $ext = 'png';
      elseif(IMAGETYPE_JPEG == $type) $ext = 'jpg';
      elseif(IMAGETYPE_GIF == $type) $ext = 'gif';
      else
      {
       return;
      }

      FileHandler::removeFilesInDir($target_path);

      $target_filename = sprintf('%s%d.%s', $target_path, $member_srl, $ext);
      // Convert if the image size is larger than a given size or if the format is not a gif
      if(($width > $max_width || $height > $max_height ) && $type != 1)
      {
       FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, $ext);
      }
      else
      {
       @copy($target_file, $target_filename);
      }
     }

  • profile
    기진곰 2016.10.07 16:13:09
    끝에서 9번째 줄 && $type != 1 를 지워주시면 됩니다.
  • ?
    마신 2016.10.07 16:24:20

    감사합니다 이제 관리자가 설정한 이미지 이상 넘으면 자동 리시즈 작동이 잘됩니다.

    용량 문제도 해결되어야 완벽하겠지만 일단 이미지 사이즈 제한으로 용량이 조금이라도 줄어들듯 합니다.

  • profile
    기진곰 2016.10.07 16:15:25

    일단 간단한 코어수정 방법은 바로 위 댓글을 참고하시고요...

     

    가로세로 크기는 작지만 재생 시간이 길어서 용량이 큰 GIF 이미지라든지, 이런 문제가 여전히 남아 있기 때문에 장기적으로는 더 확실한 해결책이 필요할 것 같습니다. 무조건 줄여버리면 간단한 GIF도 사용할 수 없게 되는 문제가 생기거든요.

  • profile
    웹지기 2016.10.07 16:23:45
    저희 사이트의 경우 이미지매직을 설치해서 그런지 리사이즈시에도 애니메이션이 사라지지 않아요. 그럼 저희 사이트 같은 경우 리사이즈만 동작하면 원하는 이미지로 등록이 되는거 맞겠죠?
  • profile
    기진곰 2016.10.07 16:27:01
    이미지매직을 사용하려면 코어를 패치하거나 프로필사진 등록 과정에 서드파티 자료가 끼어들어야 할 텐데요...
  • profile
    웹지기 2016.10.07 16:28:35

    아.. 프로필 이미지는 이미지매직이 관여를 못하겠군요. 이미지프로세서에서 옵션에서 제가 이미지매직을 선택해 줬다는 것을 깜빡 했네요 ㅋㅋ
    일단 예전처럼 리사이즈만 해주고 움짤이 사라지면 회원들이 사이즈 맞춰서 업로드하려는 시도는 하게 되니 예전 방식이 운영자에게도 도움이 되는 방식 일 듯 합니다.

  • profile
    기진곰 2016.10.07 16:34:06
    움짤도 쓸데없이 대용량 파일을 올리지 못하도록 용량 제한이나 재생시간 제한을 둘 수 있으면 좋겠네요.
  • profile
    웹지기 2016.10.07 16:42:18
    아마 용량제한 정도만 설정이 가능하면 거부 당하면 용량확인하고 그에 맞게 줄이려고 회원들이 노력할겁니다. 용량만 제한으로 넣어도 훌륭합니다.
  • ?
    마신 2016.10.07 16:25:43
    첨부용량 관리에서 설정하고 체크되면 좋을거 같습니다. 감사 드립니다
  • ?
    마신 2016.10.07 16:58:45

    프로필 수정후 용량 큰거 찾아 지우고 있는데 어마무시하네요
    2MB , 6MB , 12MB, 15MB 짜리 프로필 이미지가 계속 나오네요 ㄷㄷ

    1MB 이상 프로필 사진만 지워도 트래픽이 상당히 줄어것 같아요


List of Articles
번호 분류 제목 날짜
공지 질문/답변 답변을 확실히 받기위한 질문자 지침서 20 2015.12.31
2976 질문/답변 혹시 http2 활성화 시키신 분들 어떻게 하셨는지 알려주실 수 있나요? 2 2016.10.07
2975 질문/답변 혹시 자바 스크립트 중에... 2 2016.10.07
2974 질문/답변 글쓰기할때 밑에 댓글허용 기본체크되어있는데요.. 3 2016.10.07
2973 질문/답변 질문입니다. 4 2016.10.07
2972 질문/답변 댓글 작성자를 임의로 변경 가능할까요? 5 2016.10.07
2971 질문/답변 카메론 니트테마에서 상단 메뉴를 고정하고 싶습니다. 2 2016.10.07
2970 질문/답변 서버가 잘못 된것인지... form 전송후 변수로 변경됩니다. 2 2016.10.07
2969 질문/답변 댓글 확인 후 노출하기 8 2016.10.07
2968 질문/답변 피시와 모바일에서 다른 에디터 사용 방법은? 1 2016.10.07
» 질문/답변 프로필 이미지 GIF용량크기 제한 또는 리사이즈 문제 21 2016.10.07
2966 질문/답변 본문에 태그 출력을 태그 있을 때 출력하는 조건문이 있을까요? 1 2016.10.07
2965 질문/답변 백업하는 방법 궁금합니다 (조건) 4 2016.10.07
2964 질문/답변 회원 정보 수정에서 일부 항목 숨기기 혹은 수정금지하기 9 2016.10.06
2963 질문/답변 XE 이메일 수정 금지 하기 6 2016.10.06
2962 질문/답변 상위그룹 하나만 표현, 그룹이하 접근 제어를 하려면 방법이 있나요? 1 2016.10.06
2961 질문/답변 클라우드 플레어라는게 어떤건가요? 2 2016.10.06
2960 질문/답변 여러분의 트위터 공유는 어떤가요? 2 2016.10.06
2959 질문/답변 게시글 등록 시 발송 되는 관리자 메일이 스팸(Junk) 메일함으로 들어가는 현상 2 2016.10.06
2958 질문/답변 1.8.25에서 메뉴 링크 이미지가 변경되지 않습니다. 1 file 2016.10.06
2957 질문/답변 무료 네임서버 8 2016.10.06
Board Pagination Prev 1 ... 17 18 19 20 21 22 23 24 25 26 ... 170 Next
/ 170
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...