1. 작가: 문스버드
제목: Windows에서 Apache+Tomcat+MySQL+jsp+php에 대한 서버 통합 구성 경험 요약
시간: 2004.8.19
원본은 서남교통대학교 진성역에서 출판되었습니다.
2. 이 글은 저자가 지난 몇 년간 jsp/configuration 서버 환경을 학습한 경험을 요약한 것입니다. 퍼가셔도 되지만 출처를 밝혀주세요.
jsp를 배우기 시작한지 꽤 오래되었습니다. 인터넷에 jsp 통합의 예가 많이 있지만 문제도 많습니다.
Apache+Tomcat+MySQL+jsp+php 통합의 경우 Tomcat과 Apache 버전에 따라 약간의 차이가 있습니다.
비록 당신의 E-text가 좋다 하더라도 Tomcat과 Apache의 매뉴얼을 읽는다면 그것들을 성공적으로 통합하지 못할 수도 있습니다. 여름방학 동안 집에 있는데 인터넷 속도가 교통대만큼 느리지 않다---낡은 암표차만큼 느리기 때문에 저자는 이를 바탕으로 많은 온라인 정보를 참고하고 나는 그 본질을 흡수하여 초보자들에게 편의를 제공하고 A 석사의 참고 매뉴얼로도 활용되기를 바라며 이 글을 썼습니다.
jsp는 Java 기술을 기반으로 하며 JavaBean/Servlet을 사용하여 동적 웹사이트를 생성합니다. Java의 강력한 객체 지향 프로그래밍은 PHP 및 ASP에 비해 Jsp 고유의 이점을 제공합니다. 하지만 jsp를 배우는 것은 php나 asp에 비해 어렵습니다.
그 이유 중 하나는 JSP 서버 환경의 구성이 조금 까다롭기 때문이라고 생각합니다. 동적 웹 페이지 제작에 있어 ASP는 Jiaotong University에서 오랫동안 우위를 점해 왔습니다. JSP를 사용하는 "전문가"(아마도 많은 사람들이 jsp를 사용하는 사람을 전문가라고 생각함)가 많지 않으며 Jiaotong University는 더 많습니다. 성공적인.
Century Star Network(Tomcat), 온라인 교육원 웹 사이트(Resin), Jiaotong University 입학 및 취업 네트워크(Tomcat) 등 jsp 웹 사이트, 서버는
Linux 9는 비교적 안정적이고 안정적으로 실행됩니다. Linux에서 Apache와 Tomcat을 통합하는 방법에 대한 기사를 게시한 적이 있습니다. 필요한 경우 Jincheng에서 검색해 보세요. Linux와 Windows에서의 통합 아이디어는 동일하며 Apache를 사용하여 *.html/*.htm을 구문 분석합니다.
정적 웹 페이지의 경우 *.jsp 및 서블릿을 만나면 jsp 페이지가 Tomcat(또는
resin), Linux에서 컴파일하여 이 모듈을 만드는 것이 좀 더 번거롭습니다. 이 기사에서는 통합을 완료하기 위해 win 아래에 이미 만들어진 모듈을 사용합니다.
더 이상 고민하지 말고 통합을 시작해 보겠습니다.
필수 소프트웨어
(1) j2sdk-1_4_2-windows-i586.exe
jdk 버전은 그다지 관련성이 없으며 Apache와 Tomcat의 통합에 영향을 미치지 않습니다. 환경 변수를 구성할 때 주의하세요.
(2) apache_2.0.49-win32-x86-no_ssl.exe
Apache 버전은 통합에 큰 영향을 미치지 않지만 이 버전을 활용하는 것이 가장 좋습니다.
(3)jakarta-tomcat-4.1.30.exe
이 버전을 사용하는 것이 가장 좋습니다. 다른 버전을 사용해 본 적이 없어서 통합이 실패할 수 있습니다.
(3) php-4.3.3-Win32.zip
압축된 패키지이므로 다운로드하여 직접 압축을 풀면 됩니다.
(4) mod_jk.dll
이 모듈은 Apache의 모듈에 배치되며 Tomcat과 Apache 간의 통신에 사용됩니다.
(5) mysql-max-3.23.46a-win.zip
데이터베이스 mysql의 버전은 통합에 거의 영향을 미치지 않습니다.
(6) jdbc 드라이버
데이터베이스에 연결할 때 사용되는 mysql 드라이버
위 소프트웨어의 주소는 게시하지 않겠습니다. 온라인에서 Baidu 및 Beida Tianwang을 검색해 보세요. 실제로 찾을 수 없다면 큰 문제가 되지 않습니다. 그것을 요청하십시오.
1. j2sdk 설치
Windows에서는 다운로드한 j2sdk-1_4_1_01-windows-i586.exe 파일을 직접 실행하고 설치 마법사에 따라 디렉터리에 설치합니다(예: d:serverj2sdk에 설치).
1. 환경 변수를 구성합니다.
CLASSPATH 변수 변수 값을 다음과 같이 추가합니다.
./;%CLASSPATH%;D:serverj2sdk1.4.0libdt.jar;d:serverj2sdk1.4.0libtools.jar;
d:서버j2sdk1.4.0bin
이 구성을 사용하면 Java가 실행 중일 때 클래스 클래스를 찾을 수 있습니다.
2. JAVA_HOME 변수를 추가합니다. 변수 값은 d:serverj2sdk1.4.0입니다.
3. 원래 경로 변수에 d:serverj2sdk1.4.0bin을 추가하면 java 명령이 어디에 있든 실행될 수 있습니다.
다시 시작하여
dos를 입력하고 java 및 javac를실행
하여 명령 도움말이 나타나면 java 애플릿을 실행하여 확인할 수도 있습니다.
공개 정적 무효 메인(문자열 인수[]){
System.out.println("이것을 보면 Java 설치가 성공한 것입니다!");
}
}
위 프로그램을 test.java 파일에 저장합니다. test.java여야 합니다. 그런 다음 명령을 사용하여 컴파일합니다.
javac test.java
오류가 없으면 컴파일이 성공한 것입니다. 오류가 있으면 Java 환경 변수가 올바르게 구성되지 않았으며 올바른 프로그램 작성을 기반으로 방금 재구성되었음을 의미합니다. 컴파일이 성공하면 다음을 실행합니다.
자바 테스트
참고로, java test.java가 아닙니다! 맞다면 다음과 같이 출력됩니다.
이는 java가 성공적으로 설치되었음을 의미합니다.
2. apache 설치를
진행할 수 있습니다.
1. apache_2.0.49-win32-x86-no_ssl.exe를 실행하고 "확인"을 클릭한 후 "수락"을 클릭하고 경로를 선택하세요.
d:서버아파치 그룹아파치2.
이 시점에서 Apache가 성공적으로 설치되어 실행 중입니다. IE에서 http://localhost/를 입력하면 확인할 수 있습니다.
아파치의 홈페이지. 설치 성공!
2. httpd.conf 수정
Apache의 구성 파일은 httpd.conf이며 Apache 루트 디렉터리 아래의 conf 폴더에 있습니다.
(1) 기본 웹사이트 루트 디렉터리를 수정합니다.
d:server 아래에 www 폴더를 웹 사이트의 루트 디렉터리로 만듭니다.
DocumentRoot "D:/server/Apache 그룹/Apache2/htdocs"
DocumentRoot "D:/server/www로 변경
(2) 캐릭터 설정을 수정합니다.
Apache는 중국어 웹 페이지를 구문 분석할 때 잘못된 문자를 생성합니다.
AddDefaultCharset ISO-8859-1을 AddDefaultCharset GB2312로 수정
(3) 기본 홈페이지를 수정합니다.
디렉토리에 액세스할 때 Apache는 자동으로 홈 페이지를 가져오며 우선순위가 정렬됩니다.
DirectoryIndex index.html index.html.var를 다음으로 변경합니다.
DirectoryIndex index.html index.jsp index.php default.jsp default.php index.html.var
(4).오류 페이지 설정
이것이 설정되지 않은 경우 다른 사람이 귀하의 URL 다음에 임의의 경로를 입력하면 404 오류가 표시됩니다.
오류가 발생하고 서버 버전 번호가 표시됩니다. 이러한 상황을 방지하려면 오류 페이지를 설정하면 됩니다.
404 오류가 발생하면, 즉 웹페이지를 찾을 수 없는 경우 방문자를 오류 페이지로 안내합니다.
켜다:
#
# 사용자 정의 가능한 오류 응답은 세 가지 형태로 제공됩니다.
# 1) 일반 텍스트 2) 로컬 리디렉션 3) 외부 리디렉션
#
# 몇 가지 예:
#ErrorDocument 500 "서버가 야유를 했습니다."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html
#
httpd.conf의 이 부분, #ErrorDocument 404 /missing.html
한 줄은 ErrorDocument 404 /error/noFile.htm으로 수정되었습니다. 여기서 noFile.htm은 d:serverwwwerror에 있는 다음 오류 파일입니다.
직접 구축해야합니다. 404 오류가 발생하면 noFile.htm 페이지를 입력하면 해당 웹 페이지를 찾을 수 없다는 메시지가 표시됩니다. 그러면 서버 소프트웨어 정보를 볼 수 없습니다. 특정 http 응답 오류 번호에 대한 관련 정보를 참조하세요.
Apache를 다시 시작하십시오. 예상치 못한 일이 발생하지 않으면 설치가 성공한 것입니다. d:serverwwwerror 디렉토리에 정적 페이지를 배치하여 성공적으로 구문 분석할 수 있는지 확인하십시오.
http://localhost/sdagasgdasasg.htm 중 하나를 입력하고 설정한 404 오류, 즉 noFile.htm 오류 페이지로 연결되는지 확인하세요.
성공!
Apache에서 다른 매개변수의 의미에 대해서는 자세히 설명하지 않겠습니다. 실제로 가장 좋은 방법은 이미 매우 명확한 httpd.conf의 주석을 읽는 것입니다.
자, 이제 아파치가 성공적으로 설치되었습니다. 휴식을 취하고 음악을 듣고 다음 설치 단계를 시작하세요. :)
3.php 설치
php-4.3.3-Win32.zip의 압축을 풀고 d:serverphp 디렉토리로 이동하여 PHP 프로그램을 구문 분석할 수 있도록 PHP 및 Apache를 구성합니다.
d:serverphp 디렉터리의 "php.ini-dist" 이름을 "php.ini"로 바꾸고 C:windowssystem32에 복사합니다.
(Win2K 디렉터리: C:winntsystem32), Apache 구성 파일 httpd.conf에 다음 줄을 입력하여 php를 지원하도록 합니다.
ScriptAlias /php/ "d:/server/php/"
AddType 애플리케이션/x-httpd-php .php3
AddType 애플리케이션/x-httpd-php .php
AddType 애플리케이션/x-httpd-php .phtml
작업 애플리케이션/x-httpd-php "/php/php.exe"
d:serverwww 아래에 다음 내용을 포함하는 index.php라는 웹 페이지를 만듭니다.
<html>
<head><title>php 테스트</title></head>
<?php
PHP정보();
?>
</html>
텍스트 편집기로 편집하여 index.php로 저장하고 아파치를 다시 시작한 후 IE에서 http://localhost/index.php 를 입력합니다. php의 환경 변수가 나타나면 php가 성공적으로 구문 분석되지 않은 것입니다. ?php phpinfo(); ?>, 이는 설치가 실패했음을 의미합니다.
4. 톰캣 설치
저는 jakarta-tomcat-4.1.30.exe 설치 파일을 사용했습니다.Windows에서는 "확인"을 클릭하면 됩니다. 설치 디렉터리는 비교적 간단합니다.
d:서버tomcat
아래 환경 변수를 설정합니다.
jdk의 환경 변수와 동일하게 TOMCAT_HOME 변수를 추가합니다. 값은 d:servertomcat입니다. CATALINA_HOME 변수를 추가하면 값은 다음과 같습니다.
d:tomcatserver, 경로 변수에 d:servertomcatbin을 추가합니다.
다음으로 tomcat을 시작하고 tomcat 디렉터리에 있는 bin/startup.bat 파일을 실행하면 tomcat 실행 콘솔이 나타나고 tomcat이 성공적으로 시작됩니다.
IE에서 http://localhost:8080/을 입력하면 Tomcat 설치가 성공한 것입니다.
5. MySQL을 설치합니다.
1단계: mysql-max-3.23.46a-win.zip의 압축을 풀고 mysql 설치 파일을 실행합니다
., d:servermysql에 mysql을 설치합니다.
2단계: d:servermysqlbin을 환경 변수 경로에 추가합니다.
3단계: d:servermysqlbin 디렉토리를 입력하고 winmysqladmin을 실행하면 mysql 사용자 비밀번호를 설정하는 대화 상자가 나타납니다. 계정은 root이고 비밀번호는 123입니다.
4단계: dos를 입력하고 mysql/bin을 입력한 후 다음 명령을 실행하여 mysql을 엽니다.
mysqld-nt --독립형
그런 다음 mysql이 열립니다.
그런 다음 다음을 실행하십시오.
mysql
켜져 있으면 다음 텍스트가 나타납니다.
; 또는 g로 끝나는 MySQL 모니터에 오신 것을 환영합니다.
귀하의 MySQL 연결 ID는 1에서 서버 버전: 3.23.46-nt입니다.
도움말을 보려면 'help;' 또는 'h'를 입력하여 버퍼를 지우십시오.
mysql>
참고: 현재로서는 mysql에 설정된 비밀번호가 없습니다. 다른 사람이 귀하의 데이터베이스에 접근하는 것을 방지하려면 mysql에 대한 비밀번호를 설정하십시오.
중국어 문서.
이제 mysql이 성공적으로 설치되었습니다!
6. MySQL 드라이버 클래스 jdbc를 설치합니다.
jdbc 드라이버 패키지의 압축을 풀고 내부의 org 폴더를 jsp를 찾을 수 있는 위치에 복사합니다. Tomcat의 루트 디렉토리 common/classes일 수 있습니다.
폴더이거나 jsp 웹 사이트 클래스 WEB-INF/class/ 아래에 있을 수 있습니다. 드라이버가 로드될 때 관련 클래스를 찾을 수 있도록 합니다. 또는 jdbc 패키지의 경로를 classpath 변수에 추가하세요.
7. Tomcat과 Apache 통합 구성
Tomcat은 *.jsp 파일을 구문 분석하는 데 사용되는 컨테이너일 뿐이며 정적 htm/html 파일을 구문 분석하는 기능은 Apache보다 훨씬 낮습니다.
통합 후 Apache는 동일한 포트에서 정적 웹 페이지를 구문 분석하는 데 사용되며 *.jsp 웹 페이지가 발견되면 구문 분석을 위해 Tomcat으로 전달됩니다.
1단계: mod_jk.dll을 Apache 루트 디렉터리의 모듈 폴더에 복사합니다.
2단계:
Apache 루트 디렉터리에서 confhttpd.conf를 열도록
APACHE를 구성하고 다음 문을 추가합니다.
#--------------- ------ -------------
#ajp13을 사용하여 Tomcat에 연결
LoadModule jk_module 모듈/mod_jk.dll
JkWorkersFile "d:/server/tomcat/conf/workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13
#------------------------------------------------ - ---
참고: 위 문장의 기본 의미는 다음과 같습니다.
loadModule의 한 줄: tomcat과 통신하기 위해 mod_jk.dll 동적 링크 라이브러리 모듈을 로드합니다.
jkWorkersFile: 작업 시 Tomcat 관련 파일 Workers.properties의 위치를 나타냅니다.
jkMount: 두 줄은 *.jsp 및 서블릿이 발견되면 ajp13 프로토콜로 전달된 다음 처리를 위해 tomcat으로 전달됨을 나타냅니다.
3단계: Worker.properties 파일을 생성합니다. tomcat 루트 디렉터리 conf에 작업자.properties 파일을 생성합니다.
Workers.tomcat_home=d:서버tomcat
Workers.java_home=d:serverj2sdk1.4.0
ps=
# 작업자.목록=ajp13
작업자.목록=ajp12,ajp13
작업자.ajp12.port=8007
작업자.ajp12.host=localhost
작업자.ajp12.type=ajp12
작업자.ajp12.lbfactor=1
작업자.ajp13.port=8009
작업자.ajp13.host=localhost
작업자.ajp13.type=ajp13
작업자.ajp13.lbfactor=1
작업자.로드밸런서.유형=lb
작업자.로드밸런서.balanced_workers=ajp12, ajp13
작업자.inprocess.type=jni
작업자.inprocess.class_path=$(workers.tomcat_home)$(ps)클래스
작업자.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar
작업자.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar
작업자. inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar
작업자.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$ (ps)servlet.jar
작업자.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar
작업자.inprocess.class_path=$(workers.java_home)$(ps) )lib$(ps)tools.jar
작업자.inprocess.cmd_line=-config
작업자.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml
작업자.inprocess.cmd_line=-홈
작업자.inprocess.cmd_line=$ (workers.tomcat_home)
작업자.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
작업자.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout
작업자.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr
작업자.inprocess.sysprops=tomcat.home=$( Workers.tomcat_home)
참고로 위 파일의 첫 번째와 두 번째 줄에는 tomcat과 jdk의 관련 디렉터리를 채워넣습니다.
4단계: tomca/conf 아래에 server.xml 파일을 구성합니다. 이는 tomcat의 주요 구성 파일입니다.
1. 가상 디렉터리 설정:
다음을 찾으세요:
<호스트 이름="localhost" debug="0" appBase="/webapps"
unpackWARs="true" autoDeploy="true">
다음으로 수정:
<호스트 이름="localhost" 디버그="0" appBase="d:/server/www"
unpackWARs="true" autoDeploy="true">
Tomcat 홈 디렉터리를 d:serverwww로 만듭니다.
다음을 찾으세요:
<컨텍스트 경로="예제" docBase="/예제" 디버그="0"
reloadable="true" crossContext="true">
다음으로 수정
<컨텍스트 경로="" docBase="/" 디버그="0"
reloadable="true" crossContext="true">
내가 이해한 바는 tomcat의 루트 디렉터리에 있는 jsp를 가상 호스트로 사용해야 한다는 것입니다.
2. Tomcat 수신 포트를 설정하고 다음 내용을 찾습니다.
<커넥터 클래스이름="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
활성화Lookups="true" RedirectPort="8443"
acceptCount="100" debug="0" 연결타임아웃="0"
useURIValidationHack="false" 비활성화UploadTimeout="true" />
기본 포트는 8080인데 다들 아시겠지만 8123으로 수정하면 다음과 같습니다.
<커넥터 클래스이름="org.apache.coyote.tomcat4.CoyoteConnector"
port="8123" minProcessors="5" maxProcessors="75"
활성화Lookups="true" RedirectPort="8443"
acceptCount="100" debug="0" 연결타임아웃="0"
useURIValidationHack="false" 비활성화UploadTimeout="true" />
3. 다음 8009 포트를 찾으세요. 이는 매우 중요합니다. Tomcat과 Apache는 8009를 통해 서로 통신합니다. 다음 부분이 <!---->로 주석 처리된 경우 <!---->를 반드시 제거하세요. .
<!-- 포트 8009에 Coyote/JK2 AJP 1.3 커넥터 정의 -->
<커넥터 클래스이름="org.apache.coyote.tomcat4.CoyoteConnector"
port="8009" minProcessors="5" maxProcessors="75"
활성화Lookups="true" RedirectPort="8443"
acceptCount="10" debug="0" 연결타임아웃="0"
useURIValidationHack="false"
프로토콜HandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
5단계: Tomcat의 conf/web.xml 파일을 구성합니다.
Apache의 404 오류 페이지 구성과 유사하게 마지막 </web-app> 줄 앞에 다음 내용을 추가합니다.
<오류 페이지>
<error-code>404</error-code>
<위치>/error/noFile.htm</위치>
</error-page>
<오류 페이지>
<예외 유형>java.lang.NullPointerException</예외 유형>
<위치>/error/error.jsp</location>
</error-page>
첫 번째 <error-page></error-page>는 404 notfound jsp 페이지의 오류 지향 페이지이므로, 404 오류가 발생할 경우,
웹 페이지는 /error/noFile.htm으로 연결됩니다. 유사한 방법을 사용하여 페이지에 다른 오류 코드를 추가할 수도 있습니다.
두 번째 <error-page></error-page> 사이는 jsp 웹 페이지에서 java.lang.NullPointerException이 발생하면 /error/error.jsp 에러 페이지로 연결됩니다. 그런 다음 jsp 페이지에 다음 내용을 추가해야 합니다.
<%@ 페이지 errorPage="/error/error.jsp" %>
일반적인 error.jsp 오류 페이지 프로그램은 다음과 같이 작성됩니다.
<%@ 페이지 contentType="text/html;charset=GB2312"%>
<%@ 페이지 isErrorPage="true"%>
<html>
<head><title>오류 페이지</title></head>
<body>
문제가 발생했습니다.</p> 오류 메시지: <%= 예외.getMessage() %><br>
스택 추적: <pre><font color="red"><%
java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
예외.printStackTrace(pw);
out.println(cw.toString());
%></font></pre>
</body>
</html>
NullPointerException이 발생하면 Tomcat은 웹 페이지를 error.jsp로 가져오고 오류 메시지를 인쇄합니다.
다섯 번째 단계는 주로 보안 고려 사항입니다. 일반적인 상황에서 웹 페이지를 찾을 수 없으면 클라이언트에서 404 오류 또는 jsp 프로그램 오류가 발생합니다.
다음과 유사한 정보가 나열됩니다(Tomcat을 예로 들면 Resin도 비슷합니다).
HTTP 상태 404 - /sdags.jsp
----------------------------- ------ ------------------------
상태 보고
메시지 /sdags를 입력합니다. jsp
설명 요청한 리소스(/sdags.jsp)를 사용할 수 없습니다.
------------------------------------- ------------------
아파치 톰캣/5.0.19
이렇게 하면 5단계의 구성이 완료되면 이러한 상황이 발생하지 않습니다.
6단계: httpd.conf 파일 구성
이 방법은 Tomcat과 Apache의 루트 디렉터리를 동일한 디렉터리로 설정하지만 클래스 저장과 같은 디렉터리의 일부 파일에 대한 고객의 액세스를 제한해야 합니다.
web-inf의 경우 httpd.conf 아래에 다음 코드를 추가합니다.
#WEB-INF에 대한 액세스를 거부합니다.
<디렉토리 ~ "/WEB-INF/">
주문 허용, 거부
모두 거부
</디렉토리>
이렇게 하면 http://localhost/web-inf/ 를 기억하려고 할 때 Apache가 거부합니다.
이제 Tomcat과 Apache의 통합이 완료되었습니다.
jsp 웹 페이지를 d:serverwww 아래에 넣으세요. 예를 들면 다음과 같습니다.
<html>
<h1>JSP 테스트<hr>
<%out.println("Hello World!");%>
</html>
index.jsp로 저장하고 IE에서는 http://localhost:8123/index.jsp를 입력하세요.
그것이 나타난다면
안녕하세요 월드!
Tomcat이 정상적으로 실행되고 있다고 설명했는데, IE에도 http://localhost/index.jsp가 나타나면 입력하세요.
안녕하세요 월드!
축하합니다! 통합이 성공적으로 이루어졌습니다. 길고 험난한 jsp의 길에 큰 발걸음을 내디뎠습니다~
위 통합 글을 급하게 완성했는데, 약간의 오류가 있을 수 있습니다. 또는 일부 잘못 고려된 측면이 있지만 전반적으로 괜찮을 것입니다.
이 방법을 반복해서 사용해서 성공적으로 통합한 것은 큰 문제입니다. 질문이 있으시면 저에게 직접 연락하실 수 있습니다.
달새: 메일:[email protected]
http://blog.csdn.net/jangill/archive/2007/03/18/1532857.aspx