프로그래밍/Web(CSS + HTML + JS + PHP )
-
스마트 에디터2 사진 업로드 오류 해결프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 12. 22. 15:14
네이버에서 관리하는 오픈소스중 하나인 스마트 에디터는 JavaScript로 구현된 웹 기반의 WYSIWYG 편집기이다. 현재 네이버는 자신들이 새로 개발한 스마트 에디터3를 사용하고 있지만, 스마트 에디터2도 쓸만하다. 하지만, 사진 업로드 예제를 수행하던 중 아래와 같은 오류가 발생했다. 서버 URL 셋팅을 제대로 하였지만, 자꾸 위와 같은( [가이드]사진 업로더할 서버URL셋팅이 필요합니다.-onAjaxError )와 같은 에러가 날 괴롭혔다. 오류를 보기위해 로직을 (attach_photo.js파일 onAjaxError함수.) 아래와 같이 변경하였다. 1 2 3 function onAjaxError (e){ alert("[가이드]사진 업로더할 서버URL셋팅이 필요합니다.-onAjaxError"+e...
-
[IIS 10] 강제 https redirect 시키기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 6. 28. 08:59
Https Redirect ssl인증서를 적용해도 https로 redirect되지 않는다... 하지만 URL Rewrite기능을 이용하면 http로 접속하더라도 https로 변경할 수 있다. ※ URL 재작성 기능이 없다면, https://www.microsoft.com/web/downloads/platform.aspx 을 설치하여 URL 재작성 검색 후 설치하면 나타난다. 우측 메뉴 → 규칙 추가 → 인바운드 규칙 → 빈 규칙을 선택한다. 이후 아래와 같이 작성한다. 리디렉션 유형은 '기타 참조(303)'을 선택하면 된다. 이후 http://나의도메인 으로 접속해도 자동으로 https로 접속되는 모습을 볼 수 있다.
-
[IIS 10] Let's Encrypt로 https 적용하기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 6. 28. 08:42
Https는 필수인가? 개인적인 용도로 사용하는 서버라면 상관 없지만, 회원가입과 같은 개인정보가 사이트에 들어가는 경우 2012년 8월 18일부터 법이 변경되어 정보통신망 이용촉진 및 정보보호 등에 관한 법률에서 제28조와 제76조가 보안과 과태료에 관련된 내용이며 제15조 제4항 제3호 정보통신망을 통하여 이용자의 개인정보 및 인증정보를 송신·수신하는 경우 보안서버 구축 등의 조치 라고 언급되며 https 연결을 의무화하고 있다. IIS 10에서 Let's Encrypt로 무료로 https 적용하기 타사의 인증서의 경우, 1년간 3만원이며, *.example.com 형태의 와일드카드 인증서의 경우 15만원을 호가한다. 하지만, Let's Encrypt를 이용하면 서브 도메인 뿐만 아니라, 하나의 인증..
-
[IIS 10] 헤더 정보 노출 방지하기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 6. 27. 21:40
헤더 정보 개발자 도구에서도 확인 가능하고, 프록시 툴에서도 쉽게 확인할 수 있는 웹 페이지의 헤더 정보는 해커들이 좋아할만한 서버의 정보들을 담고 있다. 위의 사진에서도 볼 수 있듯이 Server 태그와 X-Powered-By태그를 보면, 위 웹사이트는 IIS 10.0 버전과 PHP 7.0.33버전을 사용하여 사이트를 운영중이라는 사실을 알 수 있다. 해커들 입장에서는 위의 정보들을 활용해서 서버에 해당하는 취약점들을 더 확실히 알고 보안을 위협한다. X-Powered-By PHP 제거 X-Powerd-By에 표시되는 PHP 정보는 아래와 같이 간단히 제거 할 수 있다. php.ini expose_php = On → expose_php = Off Server: Microsoft-IIS/10.0 변경 S..
-
[PHP] Curl을 사용하여 file_get_contents 사용하기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 5. 20. 11:17
php로 웹상(원격)에 있는 파일을 읽는 방법으로는 보통 아래와 같은 방법을 사용하여 파일을 읽는다. fopen() 함수 사용 file_get_contents() 함수 사용 curl 사용 하지만, 대부분의 웹 호스팅에서는 file_get_contents()을 지원하지 않는다. 또한, curl을 지원하는 웹 호스팅도 있고 지원하지 않는 웹 호스팅도 있다. (dothome 호스팅은 지원한다.) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Colored by Color Scripter cs file_get_contents()를 사용 할 자리에 위의 소스를 복사하여 적당한 위치에 두고 file_get_contents_curl()을 호출하면 file_get_contents()와 같이 작동..
-
[html] iframe을 사용하지 말아야 할 이유. (단점)프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 5. 10. 15:14
이유 1. 보안 위험을 유발함 iframe을 사용하여 구성 요소를 구현하면 사이트 간 공격(XSS)에 취약해집니다. 사용자의 개인 데이터를 피싱하여 제출할 수있는 악의적 인 웹 양식을 얻을 수 있습니다. 악의적인 사용자가 플러그인을 실행할 수 있습니다. 악의적인 사용자가 원본 사이트 URL을 변경할 수 있습니다. 악의적인 사용자가 사용자의 클릭을 도용 할 수 있습니다. 악의적인 사용자가 사용자의 키 입력을 가로챌 수 있습니다. 이유 2. 사용성 문제를 일으킴 iframe 태그는 사용성 문제를 자주 일으킵니다. 그것은 브라우저의 "뒤로가기"버튼을 간헐적으로 작동되지 않게 합니다. 그것은 사용자를 혼란스럽게하여 새로운 브라우저 창에서 iframe 내용을 갑자기 여는 것입니다. iframe 내의 콘텐츠를 연산..
-
[PHP] IE 브라우저 접속 검출하기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 4. 19. 15:44
IE(Internet Explorer)는 윈도우에 기본 탑재되어 편리한 웹 생활을 담당해주었던 인터넷 브라우저의 일종이다. 하지만 윈도우 10이 발표되고 Edge Browser(엣지 브라우저)가 발표됨에 따라 IE의 지원은 끊겼다. 따라서 IE에 탑재된 Trident엔진은 CSS를 정확히 지원을 못하고, 예상치 못한 오류들을 보여주고 있다. php에서 IE로 접속했는지 검출하려면 '$_SERVER['HTTP_USER_AGENT']'을 사용하면 된다. 아래는 $_SERVER['HTTP_USER_AGENT']를 사용하여 짠 함수다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Colored by Color Scripter cs 다른 php헤더에 inc..
-
[CSS][HTML] <div> 세로 정렬하기프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 4. 5. 20:42
CSS에서 가로 정렬은 굉장히 쉬운 일이지만, 세로 정렬은 굉장히 까다롭다. 특히 width(높이)와 height(너비)를 100%로 설정한 경우에는 더더욱히 말이다. 머리를 싸매고 구글링을 하고 여러 시도를 거듭한 끝에 성공적으로 작동되는 코드를 만들어 냈다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 Not Have Data! html, body { margin: 0; padding: 0; height: 100%; } .table0 { width: 100%; height: 100%; background-color: #888888; } .data { po..