'아파치'에 해당되는 글 2건

  1. 2010.12.20 Apache+ASP.NET(퍼옴) (1)
  2. 2008.10.15 apache rotatelogs

Apache+ASP.NET(퍼옴)

Windows 2010.12.20 20:34
Mod_AspDotNet : http://sourceforge.net/projects/mod-aspdotnet/
Apache Homepage : http://www.apache.org/

이 문서는 WIndows XP에서 아파치 서버를 구동하는 경우를 기준으로 쓴다.
미완성 프로젝트라고는 하지만, 아직까지는 별다른 기능상의 제약을 만난적은 없다.

위의 Mod_AspDotNet의 링크에서 지원모듈을 다운받아서 설치하면 아파치 설정문서에 아래와 같은 항목이 추가된다.

# Use the asp.net handler for all common ASP.NET file types
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo

<IfModule mod_aspdotnet.cpp>

    # Mount the IBuySpy C# example application
    AspNetMount /WebApp "C:/webpubs/wwwroot/webapp"
    AspNetMount /WebApp "C:/webpubs/wwwroot/webapp/island"

    # Map all requests for /StoreCSVS to the IBuySpy application files
    Alias /WebApp "C:/webpubs/wwwroot/webapp"
    Alias /WebApp "C:/webpubs/wwwroot/webapp/island"

    # Allow asp.net scripts to be executed in the IBuySpy example
    <Directory "C:/webpubs/wwwroot/webapp">
        Options FollowSymlinks ExecCGI
        Order allow,deny
        Allow from all
        DirectoryIndex Default.htm Default.aspx
    </Directory>
    <Directory "C:/webpubs/wwwroot/webapp/island">
        Options FollowSymlinks ExecCGI
        Order allow,deny
        Allow from all
        DirectoryIndex Default.htm Default.aspx
    </Directory>

    # For all virtual ASP.NET webs, we need the aspnet_client files
    # to serve the client-side helper scripts.
    AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
          "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
    <Directory \
          "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
        Options FollowSymlinks
        Order allow,deny
        Allow from all
    </Directory>

</IfModule>

빨간색으로 강조되어있는 부분처럼 디스크상의 절대경로를 수정하면 모든설정 완료.
제일 마지막 구문에서 알 수 있듯이, 컴퓨터상에 .NET FrameWork지원 모듈이 설치되어 있어야 이 모듈도 정상적으로 돌아간다.
위의 설정을 보면 알 수 있지만, 똑같은 구문이 경로만 다르게 2개 잡혀있는것을 알 수 있다.
ASP.NET을 지원하는 폴더를 더 늘리고싶다면 위와 같이, 각 구문을 복사해서 절대경로만 알맞게 수정해주면 된다.
아쉽게도 하위 디렉토리까지 모두 지원해주지는 않는다.

신고
Posted by She쥐포s

apache rotatelogs

Unix 2008.10.15 21:23
아파치를 관리하다보면 별도의 설정이 없다면 로그 Size가 겉잡을 수 없이 커지게 된다.
로그 Size가 커지면 아파치 서버에 부하를 주게 된다.

이럴 경우 아파치의 rotatelogs를 이용하여 로그를 관리할 수 있다.

1) 일정간격으로 rotate
    CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log 86400" common
    86400초 단위로 logrotate, 파일이름은 access_log.[timestamp]의 형식으로 저장되며 date의 포맷을
    사용할 수 있다. 즉 access_log.%m%d-%H%M%S 의 형태로 access_log.월일-시분초의 포맷으로
    저장할 수 있다.

2) 일정 Size로 rotate
    CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log.%m%d-%H%M%S 100M" common
    로그의 Size를 100MB로 지정한다.
신고
Posted by She쥐포s