728x90

iframe페이지 내에서 쿠키 사용시 적용이 안되는경우 이는 P3P 규약에 의해 적용되지 않는것이다.

 

 

처리방법 : Iframe의 페이지 헤더에 아래 코드를 추가해준다.

 

-Asp.Net

HttpContext.Current.Response.AddHeader("p3p","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

 


-PHP

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

 

-JSP

response.addHeader("P3P","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

 

P3P(Platform for Privacy Preferences)

'P3P'는 해당 웹사이트가 이용자의 개인정보에 대하여 수집하고자 하는 항목, 수집 목적, 수집 후 보유기간, 개인정보관리책임자 등을 설정한 '프라이버시 보호 정책'을 평가하여 네트워크상에서 컴퓨터가 기계적으로 판독이 가능하도록 XML파일을 생성한 후 자동적으로 그 파일과 이용자가 요구하는 개인정보 보호 수준을 실시간으로 대조해 이용자의 웹브라우저에서 경고 메시지를 띄우게 된다.

728x90

1. 윈도우용 awstats를 다운을 받는다

http://awstats.sourceforge.net

2. window용 perl을 다운을 받는다

http://www.activestate.com
http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl

3. 다운받은 perl을 인스톨을 한다.

perl 인스톨이 기본적으로 c:\Perl로 인스톨이 된다

 

4. perl을 인스톨후 awstats를 인스톨한다

awstats는 perl이 설치가 되어 있지 않으면 설치중에 에러 메세지를 띄워주므로 반드시 perl을 설치후 인스톨을 하길 바란다

ex) c:\awstats

설치도중에 dos창으로 아래와 같은 설정 부분이 나온다

----- AWStats awstats_configure 1.0 (build 1.4) (c) Laurent Destailleur -----
This tool will help you to configure AWStats to analyze statistics for
one web server. You can try to use it to let it do all that is possible
in AWStats setup, however following the step by step manual setup
documentation (docs/index.html) is often a better idea. Above all if:
- You are not an administrator user,
- You want to analyze downloaded log files without web server,
- You want to analyze mail or ftp log files instead of web log files,
- You need to analyze load balanced servers log files,
- You want to 'understand' all possible ways to use AWStats...
Read the AWStats documentation (docs/index.html).

-----> Running OS detected: Windows

-----> Check for web server install
awstats_configure did not find your Apache web main runtime.

Please, enter full directory path of your Apache web server or
'none' to skip this step if you don't have local web server or
don't have permission to change its setup.
Example: c:\Program files\apache group\apache
Apache Web server path ('none' to skip):
> none                     ï 아파치웹서버를 쓰질 않으므로 none으로 한다

 

Your web server config file(s) could not be found.
You will need to setup your web server manually to declare AWStats
script-x as a CGI, if you want to build reports dynamically.
See AWStats setup documentation (file docs/index.html)

-----> Update model config file 'C:\awstats\wwwroot\cgi-bin\awstats.model.conf'

File awstats.model.conf updated.

-----> Need to create a new config file ?
Do you want me to build a new AWStats config/profile
file (required if first install) [y/N] ? y     ï처음으로 설치하는것이므로 y로 한다
-----> Define config file name to create
What is the name of your web site or profile analysis ?
Example: www.mysite.com
Example: demo
Your web site, virtual server or profile name:
> smile                     ï 셋팅할 도메인명이나 호스트 명을 입력한다

 

-----> Create config file 'C:\awstats\wwwroot\cgi-bin\awstats.smile.conf'

Config file C:\awstats\wwwroot\cgi-bin\awstats.smile.conf created.

-----> Add update process inside a scheduler

Sorry, for Windows users, if you want to have statistics to be
updated on a regular basis, you have to add the update process
in a scheduler task manually (See AWStats docs/index.html).
Press ENTER to continue...


A SIMPLE config file has been created: C:\awstats\wwwroot\cgi-bin\awstats.smile.conf
You should have a look inside to check and change manually main parameters.
You can then manually update your statistics for 'smile' with command:
> perl awstats.pl -update -config=smile

You can also build static report pages for 'smile' with command:
> perl awstats.pl -output=pagetype -config=smile

 

Press ENTER to finish...

이 도로 awstats 기본설치는 되었다.

5. iis 웹서버 셋팅

 

제어판 ð 관리도구 ð 인터넷 정보서비스 ð 웹사이트

1). 기본 로그를 W3C확장로그 파일형식(Extended W3C log format)으로 설정한다

2). 로그 속성으로 들어가 로그위치를 확인및 변경을 한다

ex) 매월

3). 확장속성을 아래와 같이 변경해 준다

  • 날짜 (date)
  • 시간 (time)
  • 확장속정
    • 클라이언트 ip 주소 (c-ip)
    • 사용자이름 (cs-username)
    • 메서드 (cs-method)
    • URI 스템 (cs-uri-stem)
    • URI 쿼리 (cs-uri-query)
    • 프로토콜 상태 (sc-status)
    • 보낸 바이트 수 (sc-bytes)
    • 프로토콜 버전 (cs-version)
    • 사용자 에이전트 (cs(User-Agent))
    • 참조 페이지 (cs(Referer))

 

6. awstats의 설치된 폴더안의 cgi-bin 디렉토리를 웹페이지가 돌아가는 곳으로 복사를 한다
(cgi-bin 이하의 디렉토리 전부를 복사한다)

ex) C:\awstats\wwwroot\cgi-bin -> c:\www\cgi-bin

 

7. awstats의 icon 디렉토리도 웹서버가 돌아가는 디렉토리로 복사를 한다
(icon 이하의 디렉토리 전부를 복사한다)

ex) C:\awstats\wwwroot\cgi-bin -> c:\www\icon

 

8. 복사된 cgi-bin 디렉토리안의 awstats.host-domain.conf을 iis의 정보와 매치가 될수있도록 수정한다

ex) C:\www\cgi-bin\awstat.smile.conf

(여기서 smile은 리스트4 에서 도메인명이나 호스트명을 입력했던것이다)

LogFile="/var/log/httpd/mylog.log"
ð LogFile="C:\log\W3SVC1\ex0502.log"
// 로그가 기록된 패스및 파일명을 입력한다

LogFormat=1
ð LogFormat=2
// 윈도우 로그포맷은 2이며, Unix및 Linux 계열은 1이다

DirData="."
ð DirData="C:\awstats"
// awstats 로그가 기록될 디렉토리를 지정해주면 된다

 

9. 리스트6에서 복사된 cgi-bin 디렉토리안의 awstats.pl을 perl로 실행을 시켜준다

ex)    C:> cd C:\www\cgi-bin

    C:\www\cgi-bin> perl awstats.pl -config=smile -update

 

10. 웹페이지에서 확인을 해보자

http://yourdomain/cgi-bin/awstats.pl?config=host-domain

ex) http://192.168.0.13/awstats.pl?config=smile

 

11. log 업데이트하기 (매일)

설정 ð 제어판 ð 예약된작업 ð 새로만들기 ð 예약된 작업

 

리스트9를  매일실행할수 있도록 스케줄에 잡아준다

ex) C:\[perl_path]\perl.exe C:\[awstats_path]\awstats.pl -config=mysite –update

적용예) perl C:\www\cgi-bin\awstats.pl -config=smile -update

 

일정을 매일로 잡아주면 매일 정기적으로 awstats의 로그가 업데이트가된다

* 자세한 awstats 웹로그는 인터넷(http://awstats.sourceforge.net) 을 참조하기바란다

원문: http://wonhee.tistory.com/13

' > IIS' 카테고리의 다른 글

Visual LogParser - GUI 로그 파서 도구  (0) 2009.02.23
[Win2K] IIS SMTP 구성  (0) 2008.04.28
728x90
Log Parser 는 명령줄 유틸리티로 아주 강력하고 다양한 로그를 파싱해 주는 도구이다. 이 Log Parser 는 앞서 소개했던 API 를 제공하는데 이 API를 닷넷에서 호출하여 만들도구가 Visual Log Parser 이다.

다운로드: http://en.serialcoder.net/logiciels/visual-logparser.aspx

제한사항 : 닷넷 프레임워크 2.0(Windows Update 를 통해서 설치가능) 및 명령행 Log Parser 가 사전에 설치되어 있어야 한다.

Log Parser 2.2 :http://www.microsoft.com/downloads/details.aspx?FamilyID=
890cd06b-abf8-4c25-91b2-f8d975cf8c07&displaylang=en


물론, GUI 지원 툴을 사용한다고 해서 생산성이 높아지는 것은 아니다. 오히려 명령행 도구가 능숙한 관리자에게는 더 효과적인것이 일반적이다. 다만 이런 Visual 도구는 좀더 직관적인 인테페이스를 통해서 쉽게 접근할수 있다는 장점이 있다.



설치후 위와 같은 파일들이 설치되어 있다. 닷넷의 특성상 파일복사 만으로도 프로그램 실행이 가능하므로 설치파일이 아닌 위 파일을 다른곳에 그냥 복사해도 무리 없이 실행된다.

ICSharpCode.TextEditor 은 쿼리입력창 컴포넌트
Interop.MSUtil 은 LogParser Win32 컴포넌트를 RCW 래핑한 컴포넌트
Microsoft.Practies.* 는 MSDN 에서 제공하는 예제 컴포넌트
SandDock 는 GUI Window 지원 컴포넌트



Visual Log Parser 는 API 에서  제공하는 모든것을 지원한다. 쿼리문은 직접 타이핑을 하게 되어 있지만, 옵션값등은 마우스 조작을 통해서 적용이 가능하다.


1. 쿼리입력창



먼저 쿼리입력창을 보면, SQL Server 에서 제공하는 쿼리 분석기와 유사하다. 또한 Visual Studio 를 참조한듯 싶다. 물론, 쿼리문을 직접 타이핑을 해야 하는 점이 있기는 하나, 여러가지 템플릿을 사전에 만들어 놓는 다면 훨씬 작업이 쉬워질 것으로 생각된다.

추후 개발이 된다면, 여러가지 GUI 화면 옵션을 통해서 위와 같은 쿼리문을 자동으로 작성하는 기능이 추가되었으면 하는 바람이다. 이를테면, SQL Server 의 EM 도구에서 쿼리작성 도구를 통해서 쉽게 쿼리문을 만들수 있게 말이다.

이와 관련해서 한가지 단점이라면, 로그파일 선택이 되지 않고, 위 처럼 직접 지정을 해줘야 한다는 점도 있어 추후 개발/개선의 여지는 상당히 남아 있고 기대가 되는 점이기도 하다.


2. 결과 출력



쿼리 실행결과를 DataGrid 형태로 보여주나, 이 역시 csv 나 txt 파일로 Export 를 할수 있도록 지원한다.


3. 소스형식



명령행 도구에서 제공하는 소스 모두 가능하다. 물론, 명령행 도구의 버젼이 현재 2.2 버젼인데 이 도구의 버젼 업데이트에 따른 추가적인 데이터 원본이 추가된다면 이 역시 Visual LogParser 도 마이너 업데이트를 통해서 가능할 것으로 보인다.

위와 같은 소스형식별 쿼리 옵션을 GUI 상태에서 지정이 가능하도록 지원한다.



파라미터 값은, 데이터 원본 선택에 따라서 자동으로 옵션값 목록을 보여줘서 쉽게 설정을 할수가 있다.


다음은, 몇가지 예제쿼리 이다. 앞서 얘기한것처럼 필요한 쿼리문을 사전에 생성해 놓는다면 추후 이용하기 편리할 것이다.

- 이벤트로그 쿼리, 이벤트 소스별 이벤트 ID 의 각 % 점유율

SELECT SourceName,
 EventID,
 MUL(PROPCOUNT(*) ON (SourceName), 100.0) AS Percent
FROM System
GROUP BY SourceName, EventID
ORDER BY SourceName, Percent DESC

- 파일시스템 쿼리, 이름별 갯수

SELECT  STRLEN(Name) AS NameLen,
 COUNT(*) AS Total
FROM C:\*.*
GROUP BY NameLen
ORDER BY Total

- 레지스트리 쿼리, HKLM 클래스의 최상위 5개 키

Select top 5 * from \HKLM

- IIS로그 쿼리

- 상태코드 400 이상인 페이지 조회

SELECT cs-uri-stem AS Url, sc-status AS Status, COUNT(*) AS Errors
FROM ex*.log
WHERE (sc-status >= 400)
GROUP BY Url, Status
ORDER BY Errors DESC

- win32 오류 페이지 조회

SELECT cs-uri-stem AS Url,
WIN32_ERROR_DESCRIPTION(sc-win32-status) AS Error, Count(*) AS Total
FROM ex*.log
WHERE (sc-win32-status > 0)
GROUP BY Url, Error
ORDER BY Total DESC


- 오류가 난 Asp 페이지 쿼리

SELECT  EXTRACT_TOKEN(FullUri, 0, '|') AS Uri,
        EXTRACT_TOKEN(cs-uri-query, -1, '|') AS ErrorMsg,
        EXTRACT_TOKEN(cs-uri-query, 1, '|') AS LineNo,
        COUNT(*) AS Total
USING   STRCAT( cs-uri-stem,
                REPLACE_IF_NOT_NULL(cs-uri-query, STRCAT('?', cs-uri-query))
        ) AS FullUri
FROM ex*.log
WHERE (sc-status = 500) AND (cs-uri-stem LIKE '%.asp')
GROUP BY Uri, ErrorMsg, LineNo
ORDER BY Total DESC


위와 같은 Log Parser 도구를 이용할려면 기본적인 SQL 쿼리문의 구조를 알고 있어야 자유롭게 필요한 데이터를 추출할수 있을것이다. 물론 공개된 템플릿을 이용하거나 약간 수정해서 이용하는 것도 좋은 방법이겠다.

원문: http://www.wssplex.net/TipnTech.aspx?Seq=284


 

' > IIS' 카테고리의 다른 글

윈도우 iis 웹서버에서 awstats 설치하기  (0) 2009.02.23
[Win2K] IIS SMTP 구성  (0) 2008.04.28

+ Recent posts