Contents

?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
리눅스기반 아파치 웹서버에서 한글로 된 URL을 정상적으로 처리할 수 있게 하는 mod_url.c 설치 방법.

현재 실행되고 있는 httpd 프로세스를 확인하여 DSO(Dynamic Shared Object)가 사용 가능한지 확인.

다운 로드 : http://kle.kldp.org/apache/mod_url.c 
http://kle.kldp.org/apache/readme.mod_url 

1. DSO 확인 
=========== 
# httpd -l (in debian) 
Compiled-in modules: 
http_core.c 
mod_so.c 
mod_php3.c 

# /usr/sbin/httpd -l |grep mod_so (in redhat) 
mod_so.c 

여기서 mod_so.c 가 보이면 DSO를 통해 간편하게 mod_url.c를 설치할 수 있다.

2.1. 컴파일(일반적인 경우 RedHat은 아래 참조) 
============================================ 
설치는 아파치 확장 툴인 apxs를 이용한다.

#apxs -i -a -c mod_url.c 

이렇게 실행하면 된다.

$ apxs -i -a -c mod_url.c 
gcc -fpic -DSHARED_MODULE 
-I/path/to/apache/include -c mod_url.c 
ld -Bshareable -o mod_url.so mod_url.o 
cp mod_url.so /path_to/apache/libexec/mod_url.so 
chmod 755 /path_to/apache/libexec/mod_url.so 
[activating module `redurl' in 
/path_to/apache/etc/httpd.conf] 

2.2. 컴파일(RedHat 경우) 
======================== 
레드헷의 경우는 apxs 가 인스톨되지 않는다. 
apache-devel 이 설치되어 있는지 확인하고, 
$ rpm -q apache-devel 
apache-devel-1.3.12-25 (버젼은 1.3.9 이상이면 될거임

$ gcc -fpic -DSHARED_MODULE -I/usr/include/apache -c mod_url.c 

혹은 
$ gcc -fpic -DSHARED_MODULE -I/usr/include/apache -DEAPI -c mod_url.c 
(EAPI 는 버젼 1.3.? 이상에서 지원되는 것인데, error_log 에서 이에 관련된 warning이 보이면 이를 정의하고 컴파일 해야 함.) 
$ gcc -shared -o mod_url.so mod_url.o 
(혹은 ld -Bshareable -o mod_url.so mod_url.o) 
$ su 
# cp mod_url.so /usr/lib/apache/ 
# chmod 755 /usr/lib/apache/mod_url.so 

그런 다음, /etc/httpd/conf/httpd.conf 를 열어서 다음 라인을 추가/확인.
-----------8x----------- 
...
LoadModule redurl_module modules/mod_url.so 
...
AddModule mod_url.c 
...
-----------8x----------- 

2.3. mod_url 활성화 
=================== 

아파치 설정 파일인 httpd.conf를 끝부분에 다음과 같은 내용을 추가.
---------8X--------- 
[...] 

CheckURL On 

-------------------- 

2.4 재실행 
========== 
이제 아파치를 재실행하면 한글 URL이 제대로 인식됨.

# apachectl restart 
(or /etc/init.d/httpd restart or 
/etc/rc.d/init.d/httpd restart) 

3. 기타 
======= 
배포본에 패키지 형태로 들어 있는 아파치 웹서버의 대부분은 다양한 모듈들을 사용할 수 있게 하기 위해 DSO를 기 본적으로 사용 가능하게 해 두었으나 소스로부터 컴파일하여 아파치를 설치한 경우에는 소스를 직접 패치해야 한다.

*주의: 이 모듈은 현재 아파치 1.3.9와 1.3.11에서 테스트된 것임.

*주의: 리눅스의 경우는 glibc-2.1.x 환경에서만 가능.
mod_url.c는 glibc-2.1.x의 iconv()함수를 사용함.

* iconv() 가 UTF8 <-> EUCKR 을 지원한다면 어떤 시스템에 대하여도 적용이 가능.

?

List of Articles
No. Category Subject Author Date Views
549 Develop [c] 자료구조 그래프(graph) 소스코드 - 확인해볼 것.. file hooni 2013.04.23 7994
548 Develop [doc] Equation Solving에 대한 발표자료.. file hooni 2013.04.23 7979
547 Develop [c] 퀵정렬(quick sort) 예제 소스.. file hooni 2013.04.23 7976
546 Develop [c++] Win32API를 이용한 ExitWindowsEx 사용한 예제코드 hooni 2013.04.23 7962
545 Develop [c++] 트리컨트롤 스텝 3 예제.. file hooni 2013.04.23 7949
544 Develop [js] 양원님이 공유해 주신 유료(5$란다ㅋ) 자료 ㅋㅋ secret hooni 2013.04.23 7948
543 Develop [c] 마우스 따라다니는 고양이 - 네코95 (WinAPI) file hooni 2013.04.23 7945
542 Develop [chm] C++ 문법 가이드 file hooni 2013.04.23 7942
541 Develop [c] UCP/TCP 채팅 소스 - 정리해야 함.. file hooni 2003.04.23 7911
540 Develop [js] 자바스크립트 이벤트 핸들.. hooni 2003.04.23 7908
539 Develop [java] 마우스 버튼 테스트.. swing.. file hooni 2013.04.23 7888
538 Develop [c] OpenGL 색 입방체의 회전(입체) hooni 2003.04.23 7869
Board Pagination Prev 1 ... 48 49 50 51 52 53 54 55 56 57 ... 98 Next
/ 98