mod_python

공부하는 Study 2013. 10. 14. 16:44
apache + mod_python 설정법

Apache 2.0 이상이라면 mod_python 버전 3이상을, Apache1.3 이라면 mod_python 버전 2를 다운 받는다.
1. python-devel
설치 되어 있어야만 mod_python 설치가 정상적으로 진행된다.
# rpm -qa | grep python-devel
# yum install python-devel
2. setuptools
python 패키지 관리자. 
# rpm -qa | grep python-devel
# yum install python-setuptools

3. Database
sqlite/mysql/postgresql 등을 지원한다

4. mod_python 설치.
다운로드 : http://www.modpython.org/

# tar zxvf mod_python-3.3.1.tgz

# cd mod_python-3.3.1
# ./configure --with-apxs=/usr/local/web/apache/bin/apxs --with-python=/usr/bin/python
# make
# make install
 

make 시 mod_python-3.3.1/src/connobject.c 부분에서 에러 시
mod_python-3.3.1/src/connobject.c 를 열어
while ((bytes_read < len || len == 0) &&
           !(b == APR_BRIGADE_SENTINEL(bb) ||
             APR_BUCKET_IS_EOS(b) || APR_BUCKET_IS_FLUSH(b))) {

#tar -xvzf mod_python-3.3.1.tgz

#cd mod_python-3.3.1

#configure --with-apxs=/usr/local/apache/bin/apxs --with-python=/usr/local/python2.7

#make

make 에서 에러가 난다.

src/connobject.c 에 문제가 있다면서 에러를 낸다.

 

#vi src/connobject.c

내용중에

while((bytes_read<len ||len == 0)&&

          !(b==APR_BRIGADE_SENTINEL(b)||

            APR_BUCKET_IS_EOS(b) || APR_BUCKET_IS_FLUSH(b))) {

부분을

while((bytes_read<len ||len == 0)&&

          !(b==APR_BRIGADE_SENTINEL(bb)||

            APR_BUCKET_IS_EOS(b) || APR_BUCKET_IS_FLUSH(b))) {

수정한후 저장하고 다시 make

#make

#make install

 


 

mod_python 설정

#vi /usr/local/apache/conf/httpd.conf

LoadModule python_module /usr/local/apache/modules/mod_python.so

*다른 자료를 보니 전체경로가 아닌 modules/mod_python.so 이렇게만 써줘도 될듯하다.

 

<Directory "/var/www/html">

    AddHandler mod_python .py .pl cgi_script

    PythonHandler mod_python.cgihandler | .py

    PythonHandler mod_python.publisher

    PythonDebug On

</Directory>

을 추가해주고 저장

 


'공부하는 Study ' 카테고리의 다른 글

SublimeText3 package control 관련  (0) 2015.06.10
RHCSA 준비 #2  (0) 2014.05.21
[리눅스] RHCSA 정리 EX200  (0) 2014.05.20
RHCSA 준비  (0) 2013.10.21
[python] 파이썬 Start  (0) 2013.10.12
Posted by 뭉탁거림
,