로그에

client denied by server configuration: ~~~


라고 뜬다면. 아래와 같이 수정한다.

httpd.conf. 가상 호스트를 구축했다면 extra/httpd-vhosts.conf
<Directory />
   Options FollowSymLinks
   AllowOverride None
   Order deny,allow
   Deny from all (삭제 : 기본설정임)
   Allow from all (추가)
</Directory>










OS/Linux | Posted by 스루 2009/08/18 20:08

[CentOS] Trac 설치. mod_python.

1. 기초 환경 설정.

1-1. python 은 CentOS 에 기본적으로 포함 되어 있다.

1-2 python-devel
설치 되어 있어야만 mod_python 설치가 정상적으로 진행된다.

#rpm -qa | grep python-devel
#yum install python-devel

1-3 setuptools
python 패키지 관리자.
# yum install python-setuptools


1- 4  Genshi
easy_install 설치시 구 버전이 설치되어 trac 에서 요구하는 버전을 설치 할 수 없다. 다운 받아서 설치.
#svn export http://svn.edgewall.org/repos/genshi/trunk genshi
#cd genshi
#python setup.py install

1-5. Database
sqlite/mysql/postgresql 등을 지원한다.
sqlite 가 CentOS에 포함되어 있고 단일 파일로 라이브러리 형태로 되어 있다. 그래서 이걸로 결정.
설치 되어 있는 지 확인. python 이 2.4 버전 이하라면 pysqlite 도 설치 하여야 한다. 기본적으로 CentOS5.3 은 Python 2.4 포함.

# sqlite3 -version

1-6 한글 설정을 위한 babel, Locale Data 설치.
babel 다운로드

# mkdir temp
# cd temp
# svn co http://svn.edgewall.org/repos/babel/trunk babel
#cd babel

Locale Data 설치
# wget http://unicode.org/Public/cldr/1.6.1/core.zip
# unzip core.zip


Element Tree 패키지 설치 - locale 적용을 위해 필요하다.
#easy_install ElementTree


빌드 설절 및 CLDR 데이터의 변환하고 설치를 진행한다.
# ./setup.py egg_info
# ./scripts/import_cldr.py ./   <-  ./ 는 설치 경로(babel 폴더에 core.zip을 풀었으므로)

# ./setup.py install
#./setup.py test   <- test



옵션 사항.
#easy_install pytz
#easy_install docutils
#easy_install epydoc
#easy_install Pygments


2. mod_python 설치.

yum install mod_python

하니 apache 도 같이 받아져서 다운 받아서 깔았다.

다운로드 : 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

./configure 옵션은 자기 환경에 맞는 값을 넣어주면 된다.

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))) {


하면 된다.


3. trac 설치

# svn export https://svn.edgewall.com/repos/trac/trunk trac-trunk
#cd trac-trunk
#python setup.py complile_catalog --use-fuzzy   <= po 파일을 mo 파일로 변환.
#python setup.py install
#trac-admin --version


버전 확인하면 현재(trac-admin 0.12dev) 라고 뜬다.


4. trac와 svn, apache 연동.

# mkdir /home/trac/test
#trac-admin /home/trac/test
#chown apache.apache -R /home/trac/test


httpd.conf 수정

<Location /trac>
  SetHandler mod_python
  PythonHandler trac.web.modpython_frontend
  PythonOption TracEnv /home/trac/test
  #PythonOption TracEnvParentDir /home/trac  <= 첫페이지에 프로젝트 리스트가 뜬다.
  PythonOption TracUriRoot /trac/
</Location>


아파치 재실행후

http://localhost/trac 확인.

svn 이 연결이 제대로 안되어 있을 것이다.계정도 없고.

※에러사항들

1. 화면이 하얗게 나오고 로그에 아래와 같이 나올때

더보기



Python에서 참조하고 있는 expat verison이랑 Apache 소스 컴파일시에 아파치에서 사용하는 expat library랑
version이 맞지 않으면 mod_python에서 문제가 발생한다.

해결방안.
mv /usr/local/apache2/lib/libexpat.so.0.1.0 /usr/local/apache2/lib/libexpat.so.0.1.0.old
ln -s /lib/libexpat.so.0.5.0 /usr/local/apache2/lib/libexpat.so.0.1.0



2. mod_python 에러
페이지 맨 마지막 줄에 db에 read _write 권한이 있어야 한다고 뜨는 경우.
기본 apache가 httpd.conf 에 User, Group 이 Daemon 으로 되어 있어서 그렇다.

apache 로 설정 해 주었으므로 이 부분을 수정하여 주면 된다.


mod_python 설정 참고 페이지 : http://trac.edgewall.org/wiki/TracModPython



trac 권한 설정은 다음 페이에서.


'OS > Linux' 카테고리의 다른 글

[CentOS] Trac 환경 설정.  (0) 2009/08/19
Apache client denied by server configuration 에러.  (0) 2009/08/19
[CentOS] Trac 설치. mod_python.  (0) 2009/08/18
[CentOS] SVN 설정하기  (1) 2009/08/17
[CentOS] Apache 2.2 + Tomcat 6.0.X 연동하기.  (1) 2009/08/17
[CentOS] Apache 설치하기.  (2) 2009/08/14



OS/Linux | Posted by 스루 2009/08/17 16:31

[CentOS] SVN 설정하기



1. 설치.
1-1 yum으로 설치
# yum install subversion

1-2컴파일 버전.
참고 사이트 : http://www.pyrasis.com/main/Subversion-HOWTO
다운로드 ; http://subversion.tigris.org/ 

1.6 버전은 sqlite 를 지정하라고 해서 그 다운 버전을 선택했다.
make 시
/usr/bin/ld: cannot find -lexpat 
라고 뜬다면 아래와 같이 설치하자.
$yum install expat-devel

#tar zxvf subversion-1.4.6.tar.gz
#cd subversion-1.4.6
#./configure -prefix=/usr/local/svn --with-zlib --with-apxs=/usr/local/web/apache/bin/apxs --without-berkeley-db
# make
# make install

- 컴파일로 설치 시apache / module 폴더에 mod_dav_svn.so, mod_authz_svn.so 파일이 생성된다.
- yum 으로 설치시
# yum install mod_dav_svn



2. Repository 생성.
2 -1  Root 생성.
# mkdir /home/svn
# cd /home/svn
#svnadmin create --fs-type fsfs 폴더명


만든 해당 폴더에 들어가면 기본 하위 폴더들이 생성 되었다.

2-2 설정하기.

svnserve.conf - /home/svn/폴더명/conf/svnserve.conf

[general]
anon-access=none
auth-access=write
password-db=passwd
authz-db=authz
realm=Test Repository

anonymous acces 불가. 인증 방식은 passwd . 인증한 사람만 write 권한.

passwd - /home/svn/폴더명/conf/passwd

사용자 설정.
[users]
admin = admin


authz - /home/svn/폴더명/conf/authz
#[groups]
# harry_and_sally = harry,sally

[폴더명:/]
admin = rw


3 svnserve 로 서버 실행시키기.

# svnserve -d -r /home/svn --listen-port 6548


기본포트는 3690 이다.

외부에서 저븐 가능하도록 6548 을 열어두자.

iptable 을 사용해도 되고 X Winodw 프로그램을 사용해도 된다.

4. 자동 실행하게 하기(Option)
yum 으로 자동 설치시 /etc/rc.d/init.d/subversion 이 생기지 않는다.

파일 내용 보기




#OPTIONS=
OPTIONS="--threads --root /home/svn"

여기에 포트 번경을 하고 싶으면 위 명령어를 추가 하면 되고, 맞게 수정하여 사용하면 된다.


5. trunk , branches, tags 디렉토리 만들기.
#export SVN_EDITOR=/usr/bin/vim
#svn mkdir svn://아이피혹은도메인/repos/trunk
    (☞ 여기서 :q! 입력 → 엔터)
Log message unchanged or not specified
a)bort, c)ontinue, e)dit
    (☞ 여기서 c 입력 → 엔터)
#svn mkdir svn://아이피혹은도메인/repos/branches
#svn mkdir svn://아이피혹은도메인/repos/tags
#svn list svn://아이피혹은도메인/repos

export  SVN_DEITOR 은 .bash_profile 을 수정해서 넣어도 됩니다.



'OS > Linux' 카테고리의 다른 글

Apache client denied by server configuration 에러.  (0) 2009/08/19
[CentOS] Trac 설치. mod_python.  (0) 2009/08/18
[CentOS] SVN 설정하기  (1) 2009/08/17
[CentOS] Apache 2.2 + Tomcat 6.0.X 연동하기.  (1) 2009/08/17
[CentOS] Apache 설치하기.  (2) 2009/08/14
[CentOS] SSH 설정 하기.  (0) 2009/08/14



OS/Linux | Posted by 스루 2009/08/14 18:54

[CentOS] Apache 설치하기.


운영체제를 깔때 서버 버전으로 깔아서 기본적으로 Httpd 가 설치되어 있었다.

하지만 내가 복사해야될 폴더며 내가 필요한 것들은 당췌 어디 있는지... 알 수가 없었다 ;;;

그래서 과감히 소프트웨어 추가 삭제에서 삭제를 하고, 다운 받아서 다시 깔았다.

http://www.apache.org  에서 Linux 용 최신 버전 다운


1. tar 파일의 압축을 푼다.

# tar xvf httpd-2.2.13.tar


2. 컴파일 스크립트 수행

# ./configure --with-layout=apache --prefix-/usr/local/web/apache --enable-module=so --enable-mods-shared=all --enable-so -enable-rewrite

prefix = 설치 경로
--enable-module=so 는 tomcat 연동이나 다른 연동시 필요하므로 꼭 추가.
여기서
configure: error: no acceptable C compiler found in $PATH
이런 에러가 뜬다면 gcc 가 깔려 있는지 확인하자.
# rpm -qa | grep gcc

없다면.
# yum install gcc

mod_deflate has been requested but can not be built due to prerequisite failures
에러가 난다면.

# yum -y install zlib-devel

뭐 대략적으로 설치가 안되서 나는 에러다.

3. 컴파일

# make


4. install

# make install


에러 없이 설치가 되었다면 성공.


부팅시 자동으로 띄우고 싶다면.


#cp /usr/local/web/apachectl /etc/init.d/httpd

#vi /etc/init.d/httpd


#!bin/sh 밑에 아래 내용을 넣는다.
#chkconfig: 2345 90 90
#processname: /usr/local/web/apache/bin/apachectl
#config: /usr/local/web/apache/conf/httpd.conf
#pidfile: /usr/local/web/apache/logs/httpd.conf


저장.

#chkconfig --add httpd
#chkconfig --list httpd


하면 httpd 가 있는지 확인.

# ntsysv

하면 파란 화면이 뜬다.
여기서 httpd 에 * 가 쳐져 있다면 자동 실행된다.

#service httpd start


하고

http://localhost

들어가면

It works!

라고 뜬다.







OS/Linux | Posted by 스루 2009/08/14 10:29

[CentOS] SSH 설정 하기.



SSH 가 기본적으로 깔려 있다고 가정하고.

# vi /etc/ssh/ssh_config


Port 주석을 풀어주고, 기본적으로 SSH 는 23 이지만 다른 Port 를 하고 싶다면 수정 한다.

저장을 하고

#service sshd restart

ssh 데몬을 재시작.


#ps -ef | grep ssh

로 /usr/sbin/sshd

가 떠 있는지 확인.

#netstat -ntltp | grep 포트번호

로 해당 포트번호로 받을 준비가 되어 있는지 확인.


포트 번호가 23이 아닌 다른 번호라면

X window 에서
시스템 -> 관리 ->보안 수준 빛 방화벽에서

그 외의 포트에 추가 시켜 준다.




서버가 공유기에 연결되어 있다면

포트 포워딩을 통해서 외부에서 접근 가능하도록 할 수 있다.




OS/Linux | Posted by 스루 2008/01/09 14:06

[OS] 리눅스 권한 변경

find . -type d -exec chmod 755 {} \;

This will recursively search your directory tree (starting at dir ‘dot’) and chmod 755 all directories only.

Similarly, the following will chmod all files only (and ignore the directories):

find . -type f -exec chmod 644 {} \;