레이블이 asp인 게시물을 표시합니다. 모든 게시물 표시
레이블이 asp인 게시물을 표시합니다. 모든 게시물 표시

2016년 6월 18일 토요일

IIS7.5 다운로드 업로드 용량 늘리기[bnw]

IIS 에서 화일 용량이 초과되면 417에러가 발생한다.
이때는 IIS에 설정 용량을 늘려주어야 한다.
IIS 7.0과 7.5 에서는 기존 IIS버전과 다르게 셋팅한다.
용량을 늘리는 방법은 아래와 같다.

C:\Windows\System32\inetsrv\config 로 이동
폴더안에 있는 applicationhost.config파일을 편집하기 위해 메모장으로 연다.

아래와 같은 코드를 넣는다.

 <location path="web_site">
        <system.webServer>
            <asp appAllowDebugging="true" codePage="65001">
                <session keepSessionIdSecure="false" />
                <limits bufferingLimit="10240000" maxRequestEntityAllowed="10240000" />
            </asp>
        </system.webServer>
  </location>

location path= 에는 사이트를 설정해 놓은 이름이다.
만약 여러개의 사이트를 사용하고 있다면
용량을 늘리고 싶은 사이트 코드 부분으로 이동한다.

bufferingLimit="10240000" 은 다운로드 크기이다.(10M)
maxRequestEntityAllowed="10240000" 은 업로드 크기이다.(10M)

코드를 변경하고 IIS 서비스를 재시작한다.


2016년 4월 27일 수요일

asp 확장자 변경 - iis 7.5 [bnw]

HTTP 오류 404.17 - Not Found
요청한 콘텐츠가 스크립트로 표시되고 정적 파일 처리기에서 처리되지 않습니다.

요청이 와일드카드 MIME 맵과 일치합니다. 요청이 정적 파일 처리기에 매핑됩니다. 다른 전제 조건이 있는 경우 요청은 다른 처리기에 매핑됩니다.

확장자가 asp아닌 다른 것으로 셋팅되어 있을때 발생한다.
이때 다른 확장자 처리를 위한 메핑 스크립트를  추가해 주어야 한다.
예를 들어 확장자가 .do라면

1. IIS에서 원하는 사이트에서 처리기 매핑을 연다.


2. 스크립트 매핑 추가를 선택한다.







3. 아래와 같이 설정해 준다.
여기서는 확장자 do에 대한 설정이기 때문에 아래와 같이 했다.
이때 32bit에서는 경로가 C:\Windows\Sys32\inetsrv\asp.dll
64bit에서는 C:\Windows\SysWOW64\inetsrv\asp.dll
이다.




보안에러[bnw]

3991
사용자 정의 루틴, 트리거 또는 집계 "Do_AuditLib"에 들어가기 전에 활성 상태였던 컨텍스트 트랜잭션이 내부에서 끝났으며 이는 허용되지 않습니다. 엄격한 트랜잭션 중첩을 적용하도록 응용 프로그램 논리를 변경하십시오.

회원의 정보 업데이트 등에서 위와 같은 에러가 발생했다.
이런 에러가 뜬다면 이 부분은 DB의 view와 트리거 script 에러일 가능성이 높다.
AuditLib이 트랜잭션 내부에서 다시 실행되어 발생되는 에러이다.
DB보안 업체에 전화해서 도움을 받던가, DB의 뷰와 트리거 소스의 AuditLib 관련부분을 주석처리 하면 된다.

2016년 2월 17일 수요일

ASP datetime Sql에 적용하기[bnw]

ASP에서 날짜를 구해 그 날짜 이후에 입력되어진
데이타를 Ms Sql에서 가져오는 방법이다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%
Dim strSQL
strSQL = " SELECT * "
strSQL = strSQL & "  FROM TEST_TB(NOLOCK) "
strSQL = strSQL & "  WHERE 1 = 1 "
strSQL = strSQL & "  AND FIRST_REG_DAY >= Cast('{0}' as datetime) "
 
Dim days
days = Left(DateAdd("m",-2,Date()), 7) & "-01" '2016-01-01
 
Dim record
Set record = DbExecute(StringFormat(strSQL, Array(days)))
%>
 
 
 
 
cs

6번줄의
Cast('{0}' as datetime)
은 String(문자열)로 되어 있는 것을 datetime으로 변환시켜주는 sql문이다.

9번줄의
DateAdd("m",-2,Date())
는 현재날짜에서 달로 두달 전의 날짜를 가져오는 함수이다.
1번 인자 - "m"은 달을, "d"면 날을 의미한다.
2번 인자 - -2는 2달 전을 의미한다.

오늘이 2016-03-16 이라면
값은 2016-01-16 이 될것이다.

Left(DateAdd("m",-2,Date()), 7)
은 좌측에서 7번째자리까지 가져오는 것으로 월까지반환한다.
2016-01-16 이라면 값은
2016-01 이 된다.




2016년 1월 18일 월요일

모바일 웹으로 이동시키는 소스[bnw]

유저가 모바일을 통해 웹페이지에 접속시
자동적으로 모바일용 페이지로 연결시키는 소스

접속자 정보인 HTTP_USER_AGENT 안에 모바일 관련 내용이 있으면
모바일 페이지로 접속시키는 소스이다.

ASP 소스
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim mobile, n, strAgent
 
If (Len(Request.ServerVariables("HTTP_USER_AGENT"))=0Then
    strAgent = "NONE"
Else
    strAgent = Request.ServerVariables("HTTP_USER_AGENT")
End If
mobile = Array("iPhone""ipad""ipod""BlackBerry""Android""Windows CE""LG""MOT""SAMSUNG""SonyEricsson""Mobile","Symbian","Opera Mobi","Opera Mini","IEmobile","Mobile","lgtelecom","PPC")
 
Dim i
= 0
For Each n In mobile
    If (InStr(LCase(strAgent), LCase(n)) > 0Then
        response.redirect "http://m.co.kr"
        break
    End If
Next
 
cs

JavaScript 소스
1
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript" language="JavaScript">
    var mobileKeyWords = new Array('iPhone''iPod''BlackBerry''Android''Windows CE''Windows CE;''LG''MOT''SAMSUNG''SonyEricsson''Mobile''Symbian''Opera Mobi''Opera Mini''IEmobile');
    for (var word in mobileKeyWords){
        if (navigator.userAgent.match(mobileKeyWords[word]) != null){
            window.location.href = "http://m.co.kr";
            break;
        }
    }
</script>
 
 
cs

PHP 소스
1
2
3
4
5
6
7
8
9
10
11
12
13
<? php
    $mobileKeyWords = array ('iPhone''iPod''BlackBerry''Android''Windows CE''Windows CE;''LG''MOT''SAMSUNG''SonyEricsson''Mobile''Symbian''Opera Mobi''Opera Mini''IEmobile');
    for($i = 0 ; $i < count($mobileKeyWords) ; $i++)
    {
        if(strpos($_SERVER['HTTP_USER_AGENT'],$mobileKeyWords[$i]) == true)
        {
            header("Location: http://m.co.kr");
            exit;
        }
    }
?>
 
 
cs