archive-de.com » DE » K » KW-BERLIN.DE

Total: 256

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".
  • 아파치 투토리얼: CGI를 사용한 동적 페이지 생성 - Apache HTTP Server
    파일을 실행하라고 알린다 두번째 줄은 방금 말한 content type 선언을 출력하고 carriage return 줄바꿈을 두번 출력한다 그러면 헤더 뒤에 HTTP 헤더의 끝을 뜻하는 빈줄이 생기고 본문이 시작한다 세번째 줄은 Hello World 문자열을 출력한다 이것으로 끝이다 브라우저를 실행하고 주소를 입력한다 http www example com cgi bin first pl 파일 장소를 입력하면 브라우저창에 Hello World 한 줄이 보인다 흥분되지는 않지만 한번 동작하는 것을 보았으니 이제 다른 것을 시도해 볼 수 있다 그러나 아직 동작하지 않아요 웹에서 CGI 프로그램에 접근할때 브라우저에 나올 수 있는 내용은 기본적으로 네가지다 CGI 프로그램의 출력 좋다 모든 것이 잘 동작한다는 뜻이다 출력은 정확하지만 브라우저가 올바로 처리하지 못한다면 CGI 프로그램에서 올바른 Content Type 을 설정하였는지 확인한다 CGI 프로그램 소스코드 혹은 POST Method Not Allowed 문구 CGI 프로그램을 실행하도록 아파치를 적절히 설정하지 않았다는 뜻이다 아파치 설정하기 절을 다시 읽고 빼먹은 부분이 있는지 찾아봐라 Forbidden 으로 시작하는 문구 권한 문제가 있다는 뜻이다 아파치 오류 로그 와 아래 파일권한 절을 확인하라 Internal Server Error 라는 문구 아파치 오류 로그 를 보면 아마도 CGI 프로그램이 출력한 오류문과 함께 Premature end of script headers 가 보일 것이다 이 경우 아래 내용들을 하나씩 확인하여 어떤 이유로 CGI 프로그램이 적절한 HTTP 헤더를 출력하지 못했는지 알아본다 파일권한 서버는 당신과 동일한 계정으로 동작하지 않음을 명심하라 즉 서버가 시작하면 서버는 비특권 사용자 권한 보통 nobody 나 www 으로 동작한다 그래서 당신이 소유한 파일을 실행하려면 권한이 필요하다 파일에 nobody 가 실행하기에 충분한 권한을 주기위해 보통 모두에게 파일의 실행 권한을 준다 chmod a x first pl 또 프로그램이 다른 파일을 읽거나 쓴다면 이 파일에도 적절한 권한이 필요하다 경로 정보와 환경 명령행에서 프로그램을 실행하면 자동으로 어떤 정보가 쉘로 전달된다 예를 들어 PATH 는 쉘에게 당신이 말한 파일을 찾을 장소를 알려준다 웹서버가 프로그램을 CGI 프로그램으로 실행할때는 PATH 가 다를 수 있다 예를 들어 sendmail 같이 CGI 프로그램 안에서 실행하는 명령어는 완전한 경로로 명시해야 쉘이 명령어를 찾을 수 있다 경로 문제는 다음과 같이 CGI 프로그램 첫번째 줄에 나오는 스크립트 인터프리터 보통 perl 경로에서 자주 발생한다 usr bin perl 실제로 인터프리터의 경로인지 확인한다 또 CGI 프로그램이 다른 환경변수 를 사용한다면 아파치가 이 변수들을 프로그램에게 전달해야 한다 프로그램 오류 CGI 프로그램이 실패하는 경우 대부분 프로그램 자체 문제때문이다 특히 위의 두가지 실수를 하지 않았고 이 글을 계속 보고 있다면 더더욱 그렇다 먼저 웹서버에서 실행하기 전에 명령행에서 프로그램을 실행해본다 예를 들어 다음과 같이 실행한다 cd usr local apache2 cgi bin first pl perl 인터프리터를 실행하지 마라 쉘과 아파치는 스크립트 첫번째 줄에 있는 경로 정보 를 사용하여 인터프리터를 찾아야 한다 프로그램은 제일 먼저 Content Type 을 포함한 HTTP 헤더들을 출력하고 빈 줄을 출력해야 한다 다른 것을 출력한다면 웹서버에서 실행할 경우 아파치는 Premature end of script headers 를 반환한다 자세한 내용은 위의 CGI 프로그램 작성하기 를 참고하라 오류 로그 오류 로그는 당신 편이다 무언가 잘못되면 오류 로그에 문구가 생긴다 오류 로그를 제일 먼저 살펴봐야 한다 웹사이트를 호스팅하는 곳에서 오류 로그를 보지 못하게 한다면 아마도 다른 업체를 알아봐야 한다 오류 로그를 보는 방법을 익히면 대부분의 문제를 빨리 파악하여 해결할 수 있다 Suexec suexec 지원 프로그램을 사용하면 어떤 가상호스트 혹은 어떤 사용자 디렉토리에 있는지에 따라 CGI 프로그램을 다른 사용자 권한으로 실행할 수 있다 Suexec는 매우 엄격하게 권한을 검사하며 검사를 하나라도 통과하지 못하면

    Original URL path: http://xserve.kw-berlin.de/manual/ko/howto/cgi.html (2016-02-16)
    Open archived version from archive


  • 아파치 투토리얼: .htaccess 파일 - Apache HTTP Server
    사용자 인증이 항상 htaccess 파일에 있어야 한다는 것은 잘못 알려진 오해다 이는 사실이 아니다 주서버설정에 사용자 인증 설정을 적을 수 있고 사실 이러길 권한다 htaccess 파일은 컨텐츠 제공자가 디렉토리별로 서버 설정을 다르게하고 싶지만 서버 시스템에 root 권한이 없는 경우에 사용한다 서버 관리자가 설정을 자주 변경하고 싶지 않은 경우 일반 사용자가 직접 htaccess 파일을 수정하도록 허용하는 것이 바람직하다 예를 들어 한 컴퓨터에 여러 사용자 사이트를 서비스하는 ISP에서 사용자가 자신의 설정을 변경하고 싶은 경우가 그러하다 그러나 일반적으로 htaccess 파일은 가급적 피해야 한다 htaccess 파일에서 허용하는 지시어는 주설정파일의 Directory 섹션과 같은 효과가 있다 다음 두가지 큰 이유때문에 htaccess 파일 사용을 피해야 한다 첫번째는 성능이다 AllowOverride 가 htaccess 파일을 사용하도록 허용하면 아파치는 디렉토리마다 htaccess 파일을 찾는다 그래서 htaccess 파일을 허용하면 실제로 파일을 사용하지 않는 경우에도 성능이 떨어진다 또 htaccess 파일은 문서를 요청할때마다 읽어들인다 게다가 적용해야 하는 전체 지시어를 모으기위해 아파치는 모든 상위 디렉토리에서 htaccess 파일을 찾는다 어떻게 지시어를 적용하나 절을 참고 그래서 www htdocs example 디렉토리에 있는 파일을 요청하면 아파치는 다음 파일들을 찾아야 한다 htaccess www htaccess www htdocs htaccess www htdocs example htaccess 그래서 그 디렉토리에 있는 파일을 접근할 때마다 설정파일이 전혀 없어도 파일시스템을 4번 더 접근해야 한다 에서도 htaccess 파일을 허용한 경우를 말한다 보통은 허용하지 않는다 두번째 이유는 보안이다 사용자에게 서버설정 변경 권한을 주면 당신이 감당할 수 없는 변화가 일어날 수 있다 사용자에게 이런 권한을 줄지 곰곰이 생각하라 또 사용자가 원하는 것보다 적은 권한을 주면 기술지원요청이 들어온다 사용자에게 가능한 권한 수준을 명확히 알려라 사용자에게 AllowOverride 를 어떻게 설정하였는지 정확히 알리고 관련 문서를 제공하면 앞으로 혼란을 피할 수 있다 지시어를 www htdocs example 디렉토리의 htaccess 파일을 두는 것과 주서버설정의 Directory www htdocs example Directory 설정에 두는 것은 완전히 같다 www htdocs example 에 있는 htaccess 섹션 www htdocs example 에 있는 htaccess 파일 내용 AddType text example exm httpd conf 파일에 있는 섹션 Directory www htdocs example AddType text example exm Directory 그러나 파일을 요청할 때마다 설정을 읽지않고 아파치가 시작할때 한번만 설정을 읽기때문에 같은 설정을 서버설정파일에 사용하면 성능이 더 빠르다 AllowOverride 지시어를 none 으로 설정하면 htaccess 파일을 완전히 사용할 수 없다 AllowOverride None 어떻게 지시어를 적용하나 htaccess 파일을 발견한 디렉토리와 그 디렉토리의 모든 하위디렉토리에 htaccess 파일에 있는 설정 지시어를 적용한다 그래서 상위디렉토리의 htaccess 파일을 주의해야 한다 발견한 순서로 지시어를 적용한다 특정 디렉토리에 있는 htaccess 파일은 상위디렉토리에 있는 htaccess 파일의 지시어를 무효로 만들 수 있고 상위디렉토리에 있는 지시어는 더 상위디렉토리 혹은 주설정파일에 있는 지시어를 무효로 만들 수 있다 예제 www htdocs example1 디렉토리에 다음과 같은 htaccess 파일이 있다 Options ExecCGI 주의 htaccess 파일에 Options 지시어를 사용하려면 AllowOverride Options 가 필요하다 www htdocs example1 example2 디렉토리에는 다음과 같은 htaccess 파일이 있다 Options Includes 이 두번째 htaccess 파일의 Options Includes 가 이전 설정을 완전히 무효로 만들기때문에 www htdocs example1 example2 디렉토리는 CGI 실행을 허용하지 않는다 인증 예제 인증 방법을 알기위해 바로 이곳부터 읽는다면 주의할 것이 있다 암호 인증을 하려면 htaccess 파일이 필요하다는 오해가 널리 퍼져있다 이는 사실이 아니다 주설정파일의 Directory 섹션에 인증 지시어를 두는 것이 더 권장하는 방법이고 서버의 주설정파일을 수정할 수 없는 경우에만 htaccess 파일을 사용해야 한다 언제 htaccess 파일을 사용해야 하는지와 사용하지 말아야 하는지는 위에서 설명하였다 앞에서 말했지만 아직도 htaccess 파일이 필요하다고 생각되면 아래

    Original URL path: http://xserve.kw-berlin.de/manual/ko/howto/htaccess.html (2016-02-16)
    Open archived version from archive

  • 아파치 투토리얼: Server Side Includes 소개 - Apache HTTP Server
    attribute value HTML 주석같이 생겼기때문에 SSI 기능을 가동하지 않아도 HTML 소스에는 나오지만 브라우저는 무시한다 SSI를 올바로 설정하면 지시어를 결과값으로 바꾼다 element는 다음중 하나다 다음 회에 더 자세히 설명할 것이다 지금은 SSI로 할 수 있는 몇가지 예를 보인다 오늘 날짜 echo var DATE LOCAL echo element는 변수값을 그대로 출력한다 CGI 프로그램에 제공하는 환경변수들 외에도 여러 표준 변수가 있다 또 set element를 사용하여 직접 변수를 정의할 수도 있다 날짜 출력 형식이 마음에 들지 않는다면 다음과 같이 config element의 timefmt attribute를 사용한다 config timefmt A B d Y Today is echo var DATE LOCAL 파일의 수정일 이 문서는 flastmod file index html 에 마지막으로 수정되었다 이 element도 timefmt 형식 설정에 달렸다 CGI 프로그램 결과를 포함하기 일반적인 SSI 사용법중 하나로 많이들 애용하는 방문수 카운터 같은 CGI 프로그램 결과를 출력한다 include virtual cgi bin counter pl 추가 예제 다음은 HTML 문서에 사용할 수 있는 몇가지 SSI 예제다 이 문서가 언제 마지막으로 수정되었나 앞에서 SSI를 사용하여 사용자에게 문서의 최근수정일을 알릴 수 있다고 말했다 그러나 실제 방법은 알려주지 않았다 다음 코드를 HTML 문서에 사용하면 페이지에 시간 기록을 남긴다 물론 위에서 설명한대로 SSI가 올바로 작동해야 한다 config timefmt A B d Y 이 문서는 flastmod file ssi shtml 에 마지막으로 수정되었다 물론 ssi shtml 대신 원하는 실제 파일명을 사용한다 아무 페이지에라도 붙여넣을 수 있는 범용코드를 원한다면 파일명 대신 LAST MODIFIED 변수를 사용한다 config timefmt D This file last modified echo var LAST MODIFIED timefmt 형식에 대한 자세한 정보는 검색엔진에서 strftime 을 찾아봐라 문법은 같다 표준 페이지 하단을 포함하기 여러 페이지가 있는 사이트를 관리한다면 페이지 전체를 수정하는 것은 특히 페이지들이 표준 외관을 가지도록 수정하는 것은 정말로 괴롭다 페이지 상단 header 과 하단 footer 을 파일로 포함하여 이런 수정의 부담을 덜 수 있다 모든 페이지에서 include SSI 명령어를 사용하여 페이지 하단 파일 하나를 포함하면 된다 include element의 file attribute나 virtual attribute로 포함할 파일을 지정한다 file attribute는 현재 디렉토리에 상대적인 파일경로다 즉 로 시작하는 절대파일경로나 경로 안에 를 사용할 수 없다 아마도 서비스하는 문서의 상대 URL을 지정할 수 있는 virtual attribute가 더 유용할 것이다 경로를 로 시작할 수 있지만 포함하려는 파일이 서비스하는 파일과 같은 서버에 있어야 한다 include virtual footer html 나는 보통 이 두가지를 합쳐서 포함할 페이지 하단 파일에 LAST MODIFIED 지시어를 넣는다 포함하려는 파일에도 SSI 지시어가 나올 수 있으며 이렇게 포함한 파일이 다른 파일을 포함하는 식으로 여러번 계속 포함할 수도 있다 이외에 설정할 수 있는 것은 시간 형식 config 설정 외에 두가지를 더 config 설정 할 수 있다 보통 SSI 지시어가 잘못되면 다음과 같은 문구가 나온다 an error occurred while processing this directive 이 문구를 변경하고 싶다면 config element의 errmsg attribute를 사용하여 변경한다 config errmsg It appears that you don t know how to use SSI 사이트를 서비스하기 전에 모든 SSI 지시어 문제를 해결하여 사용자가 이런 문구를 보지 않길 바란다 그렇지 그리고 sizefmt attribute가 반환하는 파일크기 형식을 config 설정 할 수 있다 바이트로 크기를 보여주려면 bytes 적절히 Kb나 Mb로 크기를 보여주려면 abbrev 를 사용한다 명령어 실행하기 나는 다음 달에 작은 CGI 프로그램과 SSI를 같이 사용하는 글을 쓸 예정이다 지금은 exec element로 할 수 있는 다른 것들을 설명할 것이다 SSI는 실제 쉘을 정확히는 bin sh 나 Win32를 사용한다면 DOS 쉘

    Original URL path: http://xserve.kw-berlin.de/manual/ko/howto/ssi.html (2016-02-16)
    Open archived version from archive

  • 사용자별 웹디렉토리 - Apache HTTP Server
    DirectoryMatch AllowOverride UserDir로 파일경로 지정하기 UserDir 지시어는 사용자별 페이지를 가져올 디렉토리를 지정한다 이 지시어의 사용법은 여러가지다 슬래쉬로 시작하지않는 경로를 지정하면 각 사용자의 홈디렉토리에 상대적인 디렉토리 경로로 처리한다 예를 들어 아래 설정의 경우 UserDir public html URL http example com rbowen file html 은 파일 경로 home rbowen public html file html 을 뜻한다 슬래쉬로 시작하는 경로를 지정하면 지정한 디렉토리에 사용자명을 더한 디렉토리 경로를 사용한다 예를 들어 아래 설정의 경우 UserDir var html URL http example com rbowen file html 은 파일 경로 var html rbowen file html 을 뜻한다 별표 를 포함한 경로를 지정하면 별표를 사용자명으로 대체한 경로를 사용한다 예를 들어 아래 설정의 경우 UserDir var www docs URL http example com rbowen file html 은 파일 경로 var www rbowen docs file html 을 뜻한다 기능을 이용할 사용자 제한하기 UserDir 문서에 있는 문법을 사용하여 사용자별 웹디렉토리 기능을 이용할 수 있는 사용자를 제한할 수 있다 UserDir enabled UserDir disabled root jro fish 위 설정은 disabled 문장에 열거한 사람을 제외하고 모든 사용자에게 웹디렉토리 기능을 허락한다 또 다음과 같이 몇몇 사용자를 제외하고 기능을 허락하지 않을 수도 있다 UserDir disabled UserDir enabled rbowen krietz UserDir 문서에 있는 다른 예들도 참고하라 각 사용자별 cgi 디렉토리 지정하기 사용자마다 cgi bin 디렉토리를 부여하려면 Directory 지시어를 사용하여

    Original URL path: http://xserve.kw-berlin.de/manual/ko/howto/public_html.html (2016-02-16)
    Open archived version from archive

  • Microsoft Windows에서 아파치 사용법 - Apache HTTP Server
    없음을 주의하라 CGI 스크립트를 사용한다면 ScriptInterpreterSource 지시어를 사용하여 아파치가 스크립트의 인터프리터를 찾는 방법을 설정할 수 있다 Windows에서 htaccess 와 같은 파일명을 다루기 힘드므로 AccessFilename 지시어를 사용하여 디렉토리별 설정파일 이름을 변경하면 편하다 Windows NT라면 아파치 시작시 발생한 오류를 Windows 이벤트 로그에 기록한다 그래서 아파치가 보통 사용하는 error log 파일을 사용할 수 없는 경우에 대비한다 Windows 이벤트 로그는 Windows NT 4 0에서는 이벤트 뷰어 프로그램으로 최신 Windows 버전에서는 이벤트 뷰어 MMC 스냅인에서 볼 수 있다 Windows 9x에는 Windows 이벤트 로그가 없기때문에 시작시 발생한 오류를 기록하지 않는다 아파치를 Service로 실행하기 Windows NT에서는 아파치를 service로 실행할 수 있다 Windows 9x에는 매우 실험적인 방법으로 비슷한 기능을 지원한다 설치시 자동으로 아파치를 service로 설치할 수 있다 모든 사용자 를 선택하면 아파치 service가 만들어진다 현재 사용자만 을 선택하더라도 설치후 직접 아파치를 service로 등록할 수 있다 service를 설치하려면 Administrators 그룹의 구성원이어야 한다 아파치에는 Apache Service Monitor라는 도구가 있다 이 도구를 사용하면 네트웍에 있는 다른 컴퓨터에 설치된 아파치 상태도 확인하고 관리할 수 있다 monitor로 아파치 service를 관리하려면 먼저 service를 설치시 자동으로 혹은 직접 설치해야 한다 아파치 bin 하위디렉토리에서 명령행 프롬프트에 다음과 같이 입력하면 아파치를 Windows NT service로 설치한다 apache k install 설치할 service 이름을 지정하고 싶다면 다음 명령어를 사용한다 컴퓨터에 아파치가 여러개 설치되있다면 이름을 다르게 주어야 한다 apache k install n MyServiceName service가 사용할 설정파일을 직접 지정하려면 다음과 같이 한다 apache k install n MyServiceName f c files my conf k install 외에 다른 파라미터를 사용하지 않으면 service 이름은 Apache2 가 되고 설정파일은 conf httpd conf 가 된다 아파치 service를 제거하기 쉽다 간단히 apache k uninstall 다음과 같이 제거할 아파치 service를 지정할 수 있다 apache k uninstall n MyServiceName 보통 아파치 service 시작 재시작 종료는 Apache Service Monitor나 NET START Apache2 NET STOP Apache2 같은 명령어 혹은 Windows 서비스 관리창에서 한다 어떤 방법을 사용하든지 아파치 service를 시작하기 전에 설정파일을 검사해봐야 한다 apache n MyServiceName t 명령행 옵션으로도 아파치 service를 조정할 수 있다 설치한 아파치 serivce를 시작하려면 apache k start 명령행 옵션으로 아파치 service를 종료하려면 apache k stop 혹은 apache k shutdown 실행중인 service를 재시작하여 설정파일을 다시 읽도록 할 수 있다 apache k restart 기본적으로 모든 아파치 service는 시스템 사용자 LocalSystem 계정 권한으로 실행하도록 등록된다 Windows 보안구조상 LocalSystem 계정은 파일시스템 named pipes DCOM secure RPC 등 어떤 방법을 사용하든지 네트웍에 접근할 수 없다 그러나 해당 컴퓨터에서는 많은 권한을 가진다 LocalSystem 계정에게 네트웍 권한을 절대로 주지 마라 아파치가 네트웍 자원에 접근해야 한다면 아래에서 설명하는 방법으로 아파치를 위한 별도의 계정을 만들어라 아파치 service를 실행하기위한 별도의 계정을 만들 수도 있다 특히 아파치가 네트웍 자원에 접근해야 한다면 이 방법을 강력히 권한다 일반 도메인 사용자 계정을 만들고 암호를 기억하라 새로 만든 계정에 서비스로 로그온 와 운영 체제의 일부로 활동 권한을 부여한다 Windows NT 4 0에서는 User Manager for Domains에서 권한을 부여할 수 있고 Windows 2000과 XP에서는 아마도 그룹 정책 을 사용해야 한다 로컬 보안 설정 MMC 스냅인에서 직접 설정해줄 수도 있다 새로 만든 계정이 Users 그룹에 속하는지 확인한다 모든 문서와 스크립트 폴더에 예를 들어 htdocs 와 cgi bin 대해 읽기 및 실행 RX 권한을 부여한다 아파치 logs 디렉토리에 수정 RWXD 권한을 부여한다 Apache exe 실행파일에 읽기 및 실행 RX 권한을 부여한다 아파치 service를 실행하는 사용자에게 최소한

    Original URL path: http://xserve.kw-berlin.de/manual/ko/platform/windows.html (2016-02-16)
    Open archived version from archive

  • Novell NetWare에서 아파치 사용하기 - Apache HTTP Server
    실행할 수 있다 아파치가 시작하면 설정파일에서 Listen 지시어를 수정하지 않는한 포트 80번을 기다린다 브라우저를 시작하여 서버명 혹은 서버 주소를 입력하면 서버에 접속하여 기본페이지에 접근한다 아파치 설명서 링크가 있는 환영페이지가 나와야 한다 아무 일도 없거나 오류가 발생하면 logs 디렉토리에 있는 error log 파일을 살펴봐라 기본 설치가 동작하면 conf 디렉토리에 있는 파일을 적절히 설정한다 운영체제 주소영역에서 실행중인 아파치를 내릴려면 콘솔에 다음과 같이 입력한다 unload apache2 혹은 apache2 shutdown 보호주소영역에서 아파치를 실행했다면 unload 명령어에 주소영역을 지정한다 unload address space apache2 apache2 아파치가 설정파일 위치를 찾는 방법을 알아두어야 한다 명령행에서 설정파일을 지정하는 방법은 두가지다 f 는 특정 설정파일 경로를 지정한다 apache2 f vol my server conf my conf apache f test test conf 이 경우 설정파일은 올바른 ServerRoot 를 설정해야 한다 f 로 설정파일명을 지정하지 않으면 아파치는 서버에 컴파일된 파일명을 보통 conf httpd conf 사용한다 V 옵션으로 아파치를 시작하면 SERVER CONFIG FILE 이라는 항목을 보여준다 아파치는 다음 순서대로 ServerRoot 를 찾는다 C 옵션의 ServerRoot 지시어 명령행의 d 옵션 현재 디렉토리 서버에 컴파일된 server root 서버에 컴파일된 server root는 보통 sys apache2 이다 V 옵션으로 아파치를 시작하면 HTTPD ROOT 라는 항목을 보여준다 NetWare용 아파치 2 0에는 실행중인 웹서버를 죽이거나 정보를 알려주는 명령행 지시어가 있다 이들 지시어는 아파치 동작중에만 사용할 수 있다 지시어 앞에는 APACHE2 키워드를 붙여야 한다 RESTART 모든 쓰레드가 쉬는 상태일때 아파치를 죽이고 설정파일을 다시 읽은후 새로운 설정에 따라 worker 쓰레드들을 재시작한다 VERSION 현재 실행중인 아파치 버전 정보를 출력한다 MODULES 기본 모듈과 외부 모듈 목록을 출력한다 DIRECTIVES 모든 지시어 목록을 출력한다 SETTINGS 콘솔에 쓰레드 상태 표시를 보이거나 없앤다 상태를 보이면 아파치 콘솔창에 동작하는 쓰레드들의 상태가 나온다 SHUTDOWN 실행중인 아파치 웹서버를 죽인다 HELP 실행 옵션들을 설명한다 기본적으로 이 지시어들은 운영체제 주소영역에서 실행중인 아파치를 대상으로 한다 아파치가 보호주소영역에서 실행중이라면 p와 주소영역 이름을 추가한다 더 많은 정보를 보려면 명령행에 apache2 Help 를 입력한다 NetWare용 아파치 설정하기 아파치는 보통 conf 디렉토리에 있는 설정파일로 설정한다 이 파일은 유닉스용과 같지만 NetWare용 아파치에는 조금 다른 지시어들이 있다 사용가능한 모든 지시어에 대해서는 아파치 문서 를 참고하라 NetWare용 아파치의 주된 차이점은 NetWare용 아파치는 다중쓰레드 방식을 사용하기때문에 유닉스와 같이 요청마다 다른 프로세스를 사용하지 않는다 대신 여러 쓰레드를 실행한다 부모 쓰레드와 요청을 처리하는 여러 자식 혹은 worker 쓰레드들 그러므로 프로세스 관리 지시어가 다르다 MaxRequestsPerChild 유닉스와 같이 worker 쓰레드가 요청을 얼마만큼 처리하고 죽을지를 조정한다 권장하는 기본값 MaxRequestsPerChild 0 을 사용하면 쓰레드는 죽지않고 영원히 요청을 서비스한다 특별한 이유가 없다면 NetWare에서는 이 지시어를 0 으로 설정하길 권한다 StartThreads 이 지시어는 서버가 처음에 시작할 쓰레드 개수를 결정한다 권장하는 기본값은 StartThreads 50 이다 MinSpareThreads 서버는 쉬는 idle 쓰레드 개수가 이 값보다 적으면 worker 쓰레드를 더 만든다 권장하는 기본값은 MinSpareThreads 10 이다 MaxSpareThreads 서버는 쉬는 쓰레드 개수가 이 값보다 많으면 worker 쓰레드를 죽이기 시작한다 권장하는 기본값은 MaxSpareThreads 100 이다 MaxThreads 이 지시어는 worker 쓰레드의 최대 개수를 제한한다 권장하는 기본값은 ThreadsPerChild 250 이다 ThreadStackSize 한 worker 쓰레드가 사용할 스택 크기를 지시한다 권장하는 기본값은 ThreadStackSize 65536 이다 아규먼트로 파일명을 받는 지시어에는 유닉스 파일명이 아닌 NetWare 파일명을 사용해야 한다 그러나 아파치가 내부적으로 유닉스식 파일명을 사용하기때문에 백슬래쉬 대신 슬래쉬를 사용해야 한다 모든 절대경로에 볼륨명을 포함하길 바란다 볼륨명을 생략하면 아파치는 SYS 볼륨이라고 잘못 가정할 수 있다 NetWare용 아파치는 서버를 다시 컴파일하지 않고 실행할때 모듈을 읽어들일 수

    Original URL path: http://xserve.kw-berlin.de/manual/ko/platform/netware.html (2016-02-16)
    Open archived version from archive

  • 아파치 EBCDIC 포팅 - Apache HTTP Server
    변환기능을 추가하는 것이다 언제든지 변환할 수 있어야 하기때문에 BUFF 객체를 변환해야 하는지 알려주는 BUFF 표시를 추가했다 이 표시는 HTTP 프로토콜의 여러 단계에서 변경될 수 있다 요청을 받기 전에 변환 요청과 요청헤더가 항상 ASCII 형식이기 때문에 요청 내용을 받았을때 content type에 따라 변환 변환안함 요청 내용이 ASCII 문자나 바이너리 파일인 경우 변환해야 하기때문에 응답헤더를 보내기 전에 변환 응답헤더는 항상 ASCII 형식이기때문에 응답 내용을 보낼때 content type에 따라 변환 변환안함 응답 내용이 문자 파일이거나 바이너리 파일이기때문에 포팅에 대해서 소스의 변화는 두가지 ifdef 로 구분할 수 있다 ifdef CHARSET EBCDIC 모든 EBCDIC기반 컴퓨터에 필요한 코드 문자변환 두 문자집합간의 연속된 문자값 차이 어떤 HTTP 프로토콜 부분이 변환되야 하는지를 알려주는 표시 등 ifdef OSD POSIX SIEMENS BS2000 OSD 메인플레임 플레폼에만 필요한 코드 BS2000 OSD 플레폼에만 필요한 헤더파일 차이와 소켓 구현 문제를 다룬다 소켓 수준에서 ASCII와 EBCDIC간 변화는 BS2000 POSIX에는 이 기능을 지원하는 소켓 옵션이 있다 HTTP 프로토콜 수준에서 전송되는 자료에 프로토콜관련 문자열과 프로토콜과 무관한 일반파일이 섞여있기때문에 의도적으로 사용하지 않았다 HTTP 프로토콜 문자열은 GET 요청 Header 줄 기타 정보 등 항상 ASCII 형식이고 파일전송 부분은 즉 GIF 그림 CGI 출력 등 서버가 항상 변환하지않고 그냥 보내야 한다 서버 코드는 프로토콜 문자열 과 일반 자료 를 문자열에는 bgets 나 rvputs 바이너리 자료에는 bgets 나 rvputs 함수를 사용하여 구별한다 그러므로 무조건 모든 것을 변환하는 것은 적절하지 않다 물론 문자파일의 경우 EBCDIC 문서를 항상 ASCII로 서비스하도록 준비해야 한다 그래서 포팅에는 컴파일러가 EBCDIC 문자열로 변환한 서버 내부 문자열과 서버가 생성한 문서를 기본 프로토콜 수준에서 변환하는 기능이 있다 서버 코드에 산재된 ASCII escape문자 012 와 015 는 예외다 이들이 이미 ASCII n 과 r 의 바이너리 값이기때문에 ASCII로 두번 변환하면 안된다 이 예외는 서버가 생성한 문자열에만 적용된다 외부 EBCDIC 문서는 ASCII 줄바꿈문자를 포함하면 안된다 BUFF 관리함수를 사용하는 방법을 살펴본 후 나는 모든 puts write get gets가 거치게되는 ebcdic ascii 변환 계층 을 추가하고 동적으로 변환유무를 설정할 수 있는 변환 표시를 추가했다 문서가 원본 파일이나 CGI 출력 에서 대상 요청한 클라이언트 으로 이동할때 항상 이 계층을 두번 지난다 파일 아파치 아파치 클라이언트 서버는 이제 EBCDIC 형식으로 된 CGI 스크립트 출력의 헤더줄을 읽고 나머지 스크립트 출력이 ASCII임을 알아낼 수 있다 WWW 방문자수를 세는 프로그램과 같은 경우 문서 내용은 GIF 그림이다 기본 EBCDIC 형식으로 모든 헤더를 처리한다 그런 다음 서비스할 문서의 type에 따라 서버는 문서 내용이 이미 ASCII인지 혹은 EBCDIC에서 변환을 해야 하는지 결정한다 MIME type이 text plain text html 등 내용이 일반 문자인 문서를 암묵적으로 ASCII로 변환하거나 사용자에게 빠르게 서비스하기위해 미리 문서를 ASCII 형식으로 저장하였거나 NFS로 마운트한 디렉토리에 파일이 있는 경우 변환없이 서비스할 수 있다 예 이름이 ahtml 로 끝나는 파일을 암묵적인 변환없이 ASCII text html 문서로 그리고 ascii 확장자는 ASCII text plain 으로 서비스하려면 다음 지시어를 사용한다 AddType text x ascii html ahtml AddType text x ascii plain ascii 또 text foo 식의 MIME type을 AddType text x ascii foo 설정하여 일반 ASCII 로 서비스할 수 있다 내용이 일반 문자가 아닌 문서는 변환없이 항상 바이너리 로 서비스한다 예를 들어 GIF ZIP AU 파일형식에 가장 적합한 선택이다 물론 사용자는 rcp b 바이너리 옵션을 사용하여 파일을 메인플레임 호스트로 복사했어야 한다 서버파싱 파일은 항상 컴퓨터가 사용하는 기본 형식으로 즉 EBCDIC 저장되었다고 가정하고 처리후에 변환한다 CGI

    Original URL path: http://xserve.kw-berlin.de/manual/ko/platform/ebcdic.html (2016-02-16)
    Open archived version from archive

  • 기타 아파치 문서 - Apache HTTP Server
    버전에서 변경된 내용을 담고 있지 않다 아직도 유효한 정보가 있지만 주의해서 사용하길 바란다 아파치 성능향상 최고의 성능을 내기위해 아파치를 실행시 컴파일시 설정하는 방법을 다룬다 아파치가 왜 어떤 작업을 하고 아파치를 느리거나 빠르게 만드는 어떤 작업을 하지 않는지 설명한다 보안 팁 아파치 웹서버를 안전하게 유지하기위해 할 일 과 하지 말아야 할 일 URL 재작성 지침서 이 문서는 mod rewrite 참조 문서 를 보충한다 이 문서는 웹관리자가 실제 작업에서 부딪치게되는 전형적인 URL관련

    Original URL path: http://xserve.kw-berlin.de/manual/ko/misc/ (2016-02-16)
    Open archived version from archive



  •