서버  : 리눅스
DB : MySQL
프로그램 : 델파이(ADO 사용)

해결책 1:  my.cnf 파일에서 설정을 추가하는 방식인데 

[mysqld]
datadir=/var/lib/mysql
Socket=/var/lib/mysql/mysql.sock
default-character-set=euc-kr
skip-name-resolve         <- 이부분 추가~~

[mysql.server]
user=mysql
basedir=/var/lib
.
.
.


my.cnf 에서 skip-name-resolve 옵션을 추가하는 방법인데.. 일단 안됐음.. 

해결책 2 : max-allowed-packet 설정값을 증가 시킨다

해결책 3 : wait-time-out 설정값을 증가 시킨다
(이 설정값이 늘려 볼려고 했으나, 호스트 서버에 부하가 많다는 이유로 요청하는 값까지는 올리지 못함 고로~ wait-time-out의 값을 요청하는 값까지 올린 경우를 생각을 못하였지만 서버를 외부에 두고 할 경우에는 이 설정을 변경하는 게 쉽지는 않을 것 같같다 왜냐하면 서버를 우리회사에서만 쓰는게 아니므로....)

해결책4 : 프로그램 내부의 connection 설정 값을 증가 시킨다.
(ADO connection에 관련된 값을 증가 하여도 DB의 설정값으로 인해서 연결이 끊긴다)

해결책 4번까지를 적용 해보았으나, 결국에는 해결이 되지 않았다

위의 에러가 뜨는 상황을 조사해본 결과 한번 connection을 맺고 나서 30초가 지난 후에 연결이 끊기는 것을 확인하였다.

결국에는 wait-time-out의 설정값의 시간이 지나기 전에 쿼리를 날려서 connection을 유지하는 방법으로 문제 해결

개발 환경은 델파이인데 타이머를 돌려서 interval을 25000으로  줘서 연결을 유지한다.

다만 문제는 서버에 부하가 가지 않을 정도의 interval값을 산출하는 것..;;

그리고 쿼리를 날리는 테이블은 레코드가 별로 없는 것으로 추천! 

wait-time-out의 기본 값은 30초 이다!



마이크로소프트의 인터넷 익스플로러 7.0이 발표된 후 여러 가지 이슈들이 블로고스피어를 달구고 있다. 윈도우 정식버전에 대한 인증 문제가 그 예이다. 오늘은 원론적인 이야기보다 인터넷 익스플로러 7.0이 본격적으로 배포되면 개발자들에게 어떤 문제가 발생할지에 대하여 간단하게 정리해 보도록 하겠다.   

지금까지 많은 소개 자료에 의해 사용자 인터페이스 개선에 대한 내용은 많이 알려졌다. 즐겨 찾기, RSS 피드, 탭 브라우저, 검색 및 향상된 보안등이 표면적으로 우리가 느낄 수 있는 개선점이다. 그러나 인터넷 익스플로러 7.0이 본격적으로 배포되기 전에 웹 개발을 담당하는 개발자라면 몇 가지 개발에 대한 이슈들은 숙지하고, 자신들의 사이트를 확인하여야 할 것이다. 중요한 내용들만 정리하면 다음과 같다.   

1) 웹 표준 수용에 대한 점검 
인터넷 익스플로러 7.0은 웹 표준에 대하여 수용하기 위해 노력하였다고 한다. 현재 표준 모드(Strict Mode)와 쿼크 모드(Quirks Mode)를 모두 지원하며, 특히 표준 모드에 대한 많은 개선이 이루어졌다. 하지만 HTML 4.01과 CSS 2.1을 기준으로 하였으나 100%를 지원하지는 않는다고 한다. 표준 모드는 HTML 코드의 상단에 <!DOCTYPE> 태그를 입력하여 사용하는 것으로 인터넷 익스플로러 6.0에서 이를 사용할 때 발생한 버그가 이번에 많이 수정되었다. 그렇기 때문에 이전에 이들 버그를 돌아가기 위한 일명 꼼수 즉 회피(Hack or Filter)하기 위해 사용한 CSS 페이지가 있다면 필히 확인하여야 한다.   

2) <SELECT> 태그 요소의 Windowless Element 변경 
이전 버전에서 <SELECT>요소는 Windowed Element였기 때문에 레이어와 같은 것을 사용할 때 <SELECT> 요소가 숨겨지지 않는 문제가 있었다. 이를 해결하기 위해 Z-index를 이용하는 경우가 있었는데 이번 버전에서는 이 문제가 개선되었다. 이전 버전의 CSS를 사용한다면 직접 테스트를 해 보기 바란다.

3) 로컬리소스에 대한 접근 차단 
블로그 이미지 올리기와 같은 기능을 구현할 때 자바스크립트를 이용하여 이미지를 올리기 전에 미리 보기 기능을 제공하는 사이트가 있다. 이런 경우 로컬리소스가 대한 접근이 이루어지지 않기 때문에 서버로 이미지를 전송한 후 미리 보기를 하거나, 컴포넌트를 이용한 방식으로 전환하여야 한다.   

4) 주소표시줄과 상태표시줄이 항상 보임 
보안강화 정책의 일환으로 주소표시줄과 상태표시줄이 항상 보이게 변경되었다. 싸이월드의 미니홈피처럼 새 창을 이용하여 페이지를 출력하는 경우 콘텐트 영역의 크기에 따른 화면 표시에 문제가 발생할 수 있다. 이를 해결하기 위해 인터넷 익스플로러 7.0에서는 dialogHeight와 dialogWidth를 이전 버전과 다르게 콘텐트 영역의 크기만을 가져오도록 변경하였다. 화면 표시 사이즈와 위의 속성을 사용하는 사이트라면 확인 작업이 선행되어야 하겠다.

이 문제를 해결하기 위해서는 콘텐트의 크기와 그 외 항목들의 크기(타이틀 바 + 상태표시줄 + 가장자리 두께)를 별도로 계산하여 소스를 변경하여야 한다. 실제 계산을 해보면 가장자리 두께가 2px, 상태표시줄이 25px, 타이틀 바가 WindowsXP에서 29px, Windows2003에서 22px정도가 된다. 이를 인터넷 익스플로러 7.0에서는 이들 값들을 뺀 크기로 하여 새 창을 띄워야 의도한 창 크기로 실행할 수 있다.   

더불어 새 창의 주소표시줄이 항상 나오기 때문에 GET 방식을 이용한 중요한 정보를 전달하고 있는 사이트라면 주의를 기울어야 한다. 



상태표시줄에 자신만의 특정 문자를 입력하거나 여러 정보를 표시하는 사례들이 있었다. 하지만 이번 버전부터는 상태표시줄의 내용을 스크립트를 사용하여 표시할 수 없게 된다. 즉 window.status와 window.defaultStatus를 직접 컨트롤 할 수 없게 된다.  

5) 새 창 열기 방식의 수정 
피싱 사이트에 대응하기 위한 새 창 열기 방식이 많이 변경되었다. 사용자가 제어할 수 없을 만큼의 작거나 혹은 큰 크기의 창을 열거나, 접근할 수 없는 위치에 창을 띄우는 방식은 더 이상 사용할 수 없게 된다.   

새 창과 관련된 open(), showModalDialog(), showModelessDialog(), close() 함수들이 영향을 받게 된다. 또한 새 창은 최소 높이 150px 이상, 폭 250px 이상, 좌측 시작점 0 이상으로만 열 수 있게 된다. 그러나 이전처럼 탭 방식으로 동작하는 인터넷 익스플로러 7.0에서도 open() 혹은 showHelp() 함수를 호출할 때 resizable, menubar, location, toolbar, status, scrollbar 등을 0으로 설정하여 탭이 없는 창으로 열 수는 있다.   

탭으로 열린 창에 대해서 close() 함수를 호출하는 경우나 부모 창을 닫는 경우에는 확인 창이 기본적으로 나타난다. 하지만 탭이 없는 창의 경우에는 이전처럼 그냥 종료되니 이전 방식처럼 이용할 수 있다.   

이외에도 인터넷 익스플로러 7.0에는 강화된 보안정책으로 인한 불가피하게 기존 사이트를 수정하여야만 하는 경우가 있다. 대표적으로 ActiveX Opt-In 정책의 변경으로 사용자의 동의 없이 ActiveX의 다운로드, 등록, 실행이 모두 차단된다. 인터넷 익스플로러에서만 동작하는 많은 국내 인터넷 뱅킹의 상황을 생각해보면 엄청난 영향을 줄 수 있는 변경 사항이다.   

그 외 <BASE> 태그 요소는 반드시 <HEAD>에서만 존재하여야 하며, SSL 2.0 대신 SSL 3.0과 TLS 1.0이 기본 설정으로 변경되었다. 자바 스크립트에서의 window.prompt() 함수가 더 이상 기본으로 실행되지 않으며, iFrame을 이용하는 방법에도 여러 변화가 발생하였다.     

이처럼 인터넷 익스플로러 7.0에는 기존 많은 개발자들이 사용해온 방식에 직간접적인 영향을 주는 요소들이 아주 많이 변경되었다. 아직 국내에 많은 사용자들이 7.0으로의 전환을 하지 않은 이 시점에 자신들이 만든 사이트를 테스트 해봐야 할 것이다. 익스플로러가 브라우저 시장에서 넷스케이프를 이긴 다음 국내 개발의 초점은 IE에서만 잘 동작하면 된다는 생각이 많았다. 이는 지금도 남발되고 있는 ActiveX만 보더라도 알 수 있다. 해외 인터넷 뱅킹은 아무런 ActiveX 설치 없이 쉽게 이용할 수 있도록 지원된다. 이를 쫓아갈 필요는 없지만 개발의 편의를 위한 무분별한 사용은 이제부터라도 자제되어야 할 것이다. 더불어 아직도 많은 사이트가 파이어 폭스와 같은 브라우저를 지원하지 못하는 경우가 많이 있다. 웹 2.0에서의 웹 접근성을 위한 웹 표준 준수도 중요한 내용이지만 다양한 웹 브라우저에서 출력 유무도 앞으로는 중요한 항목으로 부각될 것이다.   

오늘도 열심히 업무를 수행하는 개발자들에게 “다양한 사용자들을 위해 조금만 더 신경을 써달라”고 응원의 메시지를 보내고 싶다. 


원본 링크 : http://www.smartplace.co.kr/blog_post_43.aspx
OS : Windows Server 2003
언어 : ASP

인터넷 게스트 계정에 대한 접근권한이 없을 경우 뜨는 것으로

일단 가장 먼저 봐야 할 건 IIS에서의 디렉토리 보안으로 들어가서 익명 엑서스 허용을 하고

NTFS에서의 권한을 체크한다.

(Taeyo의 책을 보면은 NTFS의 권한이 IIS권한보다 우선적이라고 한다.)

여기까지는 일반적으로 검색해보면 나오는 내용이고

이것을 다 설정하고, 체크를 해봤지만 결국은 계속 윈도우 인증창이 나오는 이현실

그리고 이제는 잘못된 소스에 덮어 쓰기한 폴더뿐만아니라 다른 폴더까지 접근 시에 인증을 물어본다 ..

여기서 실마리

처음 덮어쓰기를 한 폴더의 권한을 다른 폴더도 권한을 상속 받는다.

고로 처음 폴더의 권한에 문제가 있었다.

결국 처음 상위 권한의 폴더로 들어가서  NTFS의 [보안]탭에 [고급]메뉴로 들어간다.

[사용 권한] 탭에서 해당 계정에 대한 권한을 설정하고

아래에 두개의 체크박스 중에  ㅁ여기에 표시된 권한으로 자식 개체 권한 바꾸기 에 체크를 한다.!!!


정리하면 백업된 소스를 복사하면서

복사된 파일에 대한 권한이 상속받은 애들한데 전파가 되지 않아서 인증을 계속 물어보는 현상이였다.



+ Recent posts