기존에 git에 저장해두었던 gulp 세팅이 되어있던 파일을 불러오는 과정에서 node-sass가 설치 되지 않는 문제가 발생한다.

주로
“user “root” does not have permission to access the dev dir”
라는 문구를 내뱉으며 문제를 일으키는데 아래 화면처럼 계속 권한이 없다는 말만 반복하면서 무한 루프에 빠져버린다. 그래서 권한을 주고 벼라별 짓을 다 해도 몇시간 동안 node-sass 설치에 실패했다.

구글을 아무리 뒤져도 답이 나오질 않아서 한참 해메며 포기할까 싶은 무렵 실낱같은 희망이 되어준 옵션이 하나 나타났다. –unsafe-perm

이를테면 이런식으로 사용하는 것이다.

이 옵션을 주면 위와같이 권한 문제로 무한루프에 빠지는 것을 해결 할 수 있다. 좀처럼 풀리지 않는 문제라 주말 내내 골치 썩고 이제는 포기하고 싶었는데, 자기전에 극적으로 해결이 됐다… 주말이 다 날아갔다는 이야기.ㅋㅋㅋ

추가적으로 node-sass를 설치하는 과정중에 컴파일 하는 과정이 있는데 이럴 경우 컴파일러가 없으면 “make g++ command not found” 오류를 내뿜는다. 이런 경우에는 구글에서 아래와 같은 답을 내어주었다.

sudo apt-get install build-essential g++

여기까지 해주고나니 기나긴 컴파일 과정을 거치고 난 후 정상적으로 모듈이 설치되고 작업환경이 완성됐다.

카페24 쇼핑몰 솔루션을 이용할 경우 SSL 보안인증서를 신청하면 무료로 설치가 가능합니다 (2018.2.7기준). 90일마다 새로 갱신된다는것을 보니 아마도 let’s encrypt를 이용하는 것으로 추측됩니다. 저도 현재 운영중인 블로그에 그렇게 적용해서 쓰고 있습니다. 참고 : 무료 인증서 설치 포스트

그런데 문제는 예상 밖의 곳에서 터졌습니다. https는 외부에서 끌어오는 이미지도 같은 보안 프로토콜이 적용 되어있어야 정상적으로 표현이 되는데, 현재 회사에서는 외부 이미지 호스팅(http)에서 이미지를 끌어다 쓰고 있다보니 모두 이미지가 정상적으로 노출 되지 않는다는 문제가 있었습니다. 자바스크립트를 통해 들어오는 경로를 모두 강제로 https로 변경해주는 스크립트를 제공하다보니 http://~ 로 불러오는 이미지가 전부 주소가 https:// 로 바뀌는 것이 원인이라는걸 파악했습니다. 통상적으로 보안프로토콜이 적용되는 사이트에서 이미지 소스를 삽입할때 프로토콜을 따로 명시하지 않도록 권고하고 있습니다. 예를 들어서 https://www.example.com/img.jpg 또는 http://www.example.com/img.jpg 라고 명시하지말고 그냥 //www.example.com/img.jpg 라고 명시하는걸 추천하고 있습니다.

하지만 카페24 쇼핑몰 솔루션에서 이미지를 이렇게 삽입할 경우엔 같은 https:// 프로토콜로 자동으로 변환해서 http://로 불러와야할 이미지도 무조건 https://로 붙어서 이미지가 전부 깨지는 겁니다. 잘못된 경로에서 호출하는 결과가 되는것이죠. 그래서 무척 고민하고 어찌할까 골머리를 싸매며 구글의 도움을 청했습니다. 제가 자바스크립트 실력이 미천해서 한참 검색하고 헤매다가 아래 포스팅을 참고하고 힌트를 얻었습니다.

제품 정보에서 상세이미지가 전부 깨지는것이 원인이었기때문에 , 해당 부분만 탐색해서 img 태그에 삽입되는 주소가 http://로 강제 적용해주는 소스를 삽입했습니다. 아래 내용을 보시면 어느정도 참고가 될 것 같습니다.

See the Pen add ‘http:’ script by 배현기 (@illustudio) on CodePen.

모든 이미지가 http://로 적용될 것은 아니기때문에 상세이미지가 표현되는 영역(prd-detail) 내에서만 img 태그를 골라서 http://로 강제 적용해주는 스크립트로 해결 할 수 있었습니다. 하지만, 또 별개의 상황이 벌어질 수 있기 때문에 이것이 완전한 해결책은 아닙니다. 그냥 임시방편 정도로 볼 수 있겠네요. 조금 더 세밀하게 조절하자면, 각각의 이미지 태그에 클래스를 적용해서 특정 클래스의 이미지만 http:// 프로토콜이 적용되는 식으로 스크립트를 바꿔 써도 괜찮을 것같습니다.

보통 카페24 솔루션을 이용해서 직접 제작해왔던터라 스킨을 구매할 일은 없었습니다. 그런데 이번에 일하게된 업체에서 스킨 제작에 소모되는 시간을 줄여보고자 스킨을 구매하자는 의견이 나와서 처음으로 템플릿 구매를 해봤습니다. 결론부터 이야기하자면, 정말 고발해버리고 싶을정도로 소스가 엉망이네요.

이를테면 이런겁니다. 1차적으로 모든 소스가 minify 된 상태로 프로덕션 용으로 제공되고 있습니다. 처음에는 사이트 속도면에서 이점을 얻고자 한 것 정도로 이해했습니다. 그런데 보통 템플릿을 구매한다해도 그대로 쓰는 경우는 별로 없습니다. 수정을 하기 마련이죠. 그런데 이 업체는 악의적으로 수정을 어렵게 만들어 놨더군요. 그래야 계속 자신에게 수정을 맡길테니까요.

그래서 그 수법에 대해서 좀 이야기해보고자 합니다. 너무 약올라서 반디캠을 받아서 수정하는 과정을 동영상으로 촬영해놨습니다.

먼저 CSS 소스가 가장 엉망입니다. 카페 24 스킨을 구매했을 경우엔 저작권 침해가 이뤄질 것을 우려하여 소스 코드에 직접적으로 FTP를 통해 접속할 수 없게 막아놓았습니다. 그래서 서브라임 텍스트나 아톰 에디터와 같은 툴을 통해 직접적으로 수정할 수가 없어서 카페 24 자체에서 제공되는 스마트 디자인 창에서 수정해야합니다. 그래서 너무 복잡해서 에디터에 그대로 붙여넣은 모습이 바로 아래와 같은 상황입니다.

전부 minify 되어있어서 가뜩이나 많은 카페24 CSS 파일들이 죄다 이모양이라 수정하려면 전부 손을 봐야합니다. 그래서 소스를 보기 좋게 수정할 수 있는 상태로 만들어보니 아래와 같이 저작권 안내 주석 포함하여 약 816줄로 파악됩니다.

이제부터 눈여겨볼 것은 정의 된 것들이 중복되서 나온다는 점입니다. 아래 소스에서 찾기를 한 결과 하나의 정의가 5번이나 중복되는 것이 보입니다.

 

이렇게 중복된 소스들을 모조리 찾아서 하나의CSS 파일을 정리하는데 약 10분 가량 걸립니다. 그렇게 전부 중복된 코드들을 정리해서 간추리고 보니 아래와 같이 정리됩니다.

놀랍지 않습니까 208줄입니다. 816줄의 소스중에 쓰레기로 일부러 삽입된 소스가 400줄이 넘는다는 이야기입니다. 심지어 CSS 파일을 열어볼때마다 죄다 이 모양이라서 충격적이고 화가나서 참을 수가 없더군요. 하루하루 돈 주고 똥을 사서 치우는 느낌이라 이거 참 곤란하고 시간은 시간대로 들고 있는 상황입니다. 탬플릿을 구매한 의미가 없는 상태가 되어 있는거죠.

비단 이 업체만 그럴까 싶은게 너무 악의적으로 소비자를 우롱하는 상황에 참 분노를 금할 길이 없습니다. 무려 70만원이나 주고 산 템플릿이 이상태라는게 참 놀라울 따름입니다. 법적인 사태가 벌어질 것이 우려되어 업체 이름은 공개하지 않겠습니다만, 스킨을 구매하시는 것보다 그냥 차라리 제작 업체에 맡기는게 추후 책임 문제가 벌어질때도 사태가 악화되지 않을 것 같다는 생각이 듭니다.

혹시라도 쇼핑몰을 창업하실 예정이시라면 템플릿 구매는 한 번 생각해보셔야할 것 같습니다.

기존에 사용하던 테마는 automattic에서 제공하는 Underscores starter theme을 이용해서 제가 직접 만들어서 사용했는데, 포트폴리오 사이트를 kalium 테마를 구입해서 만들고나서 보니 생각보다 괜찮더군요. 그래서 묵혀두었던 enfold 테마도 좀 개선되었겠지 싶은 생각이 들었습니다. enfold 테마를 다시 공부해보고 싶어서 변경해봤습니다. 그런데 이거 참 시간들여서 한참 만졌는데도 후회가 될 정도로 엉망이네요.

이게 제가 잘못해서 설정을 못하고 있나 싶어서 한참 끙끙매던 부분인데, 반응형 테마로 적용했을때 햄버거 메뉴가 뜨지 않는 오류가 있습니다.  왜 이런 상황이 발생하는가 봤더니 ul을 감싸고 있는 div 태그를 display:none으로 놓고 햄버거 메뉴는 그나마 ul 하위의 li에서 뜨게끔 해놨더군요.

div > ul > li 이런 구조로 되어있는 상황에서 div에 display:none을 걸어놓으면 당연히 그 하위 태그들은 전부 노출되지 않죠. 도대체 왜 이런 구조로 짰는지 알 수가 없습니다만, enfold와 같은 손쉬운 제작을 표방하는 테마들은 이런식으로 크고 작은 문제들이 있는것 같습니다. enfold mobile menu not working으로 검색해보면 정말 수두룩하게 나올 정도라 문제가 심각해보이는데도 좀처럼 해결되지 않고 있는 상황입니다.

어찌됐건 조만간 테마를 다시 만들도록 하고, 일단은 하루종일 끙끙대며 세팅을 했으니 당분간은 enfold 테마로 블로그를 운영해야겠습니다. 덕분에 모바일에서는 메뉴를 구경할 수 없음을 참고하세요 ㅋㅋㅋㅋ 이거 참 심각하네

 블랙 프라이데이는 11월의 마지막 주 목요일인 추수감사절 다음날로, 미국에서 연중 가장 큰 규모의 쇼핑이 행해지는 날이다. 

위와 같은 정의를 갖고 있는 블랙프라이데이. 아마도 쇼핑몰을 운영하시는 분들 중에서는 이런 이벤트도 생각하고 있지 않을까 싶어서 준비했습니다. 임의로 넣은 내용들인지라, 할인 기간과 할인 퍼센티지는 수정이 가능하도록 텍스트 레이어 형태로 넣어두었습니다. 무료폰트인 본고딕 ( 노토산스 – Noto Sans )로 작성했습니다. 포토샵 CC 버전으로 작성한 관계로 하위버전에서의 호환을 완벽하게 보장할 수는 없습니다.

포토샵이 익숙치 않아서 수정이 어려우실 경우 작업 요청 주시면 소정의 작업비용만 받고 수정 해드리도록 하겠습니다. 단순 텍스트 수정은 5천원부터 작업 가능합니다. 새로운 디자인을 필요로 하실 경우엔 1000×1000 px 기준 5만원부터 작업가능합니다.

해당 파일의 저작권은 저에게 있습니다. 상업적, 비상업적 용도로 모두 사용이 가능하나, 다운로드는 항상 illustudio.co.kr에서 이뤄져야하며, 다른 곳으로의 무단으로 게시하거나 배포하는 행위를 금합니다. 웹 용도로 사용이 허락되어 있으며, 허락된 용도 이외의 저작권 침해행위를 모두 금합니다.