반응형

우분투에 서버를 셋팅해 놓고 한동안 사용하지 않았다.

기껏해야 FTP서버만 가끔 사용했는데.. 다시금 AJAX 관련 공부를 하면서 서버를 사용하게 됬다.

기타 서버는 모두 셋팅된 상태기에 ㅎㅎ 파일을 올리고 테스트를 하는데 이거 머같은게.. ㅋㅋ

웹 페이지가 제대로 뜨지 않네. ㅡㅡ;;; 아악! ssh로 들가서 권한을 보니 흐미 ... 답답하다.

이거 권한을 다시 설정해야 하나 하다가.. 언제까지 그렇게 수정해.. 귀찮아!!! 설정파일 어딨지??

소스설치를 한게 아니라서 설정 파일을 찾아서 umask 를 설정해 주었다.

$ sudo vi /etc/vsftpd.conf

딱히 따로 설정해줄것은 없고

#local_umask=022    <== 요거 주석 제거해주고  아랫부분에
file_open_mode=0644   <==  이거 넣어준다 파일 업로드시에 권한을 설정하는 부분이란다.

위와 같이 설정했으면 vsftp 재시작 해주자..

$ /etc/init.d/vsftpd restart   

이렇게 하면 파일 업로드 하면 권한 설정이 잘 된다. 페이지도 잘뜨고.. ㅋㅋ

울트라 에디터로 FTP 연동해서 작업하니 참 편하다.. ^^

반응형
우분투에 버전관리 서버를 설치하도록 하자.

cvs 와 svn 중에서 고민하다 cvs는 계속 사용해 왔기에 svn을 설치하기로 했다.

설치와 사용 방법에는 여러가지 케이스가 있지만 svn+ssh 프로토콜을 사용하기로 한다.

1. 서브버전 설치  
# apt-get install subversion

2. 사용자 그룹 설정
# groupadd subversion

3. 그룹에 사용자 추가(guda,twelo 계정을 그룹에 추가했다.)
# vi /etc/group
subversion:x:1005:guda,twelo

4. 서브버전에서 사용할 저장소 생성
# mkdir /home/project

저장소를 버클리 디비 방식으로 만들건지 파일 방식으로 만들건지 선택하자.
난 그냥 버클리 디비 방식으로 생성하기로 했다. 그리고 그룹이 접근할수 있도록 권한 설정

# cd /home/project
# svnadmin create --fs-type bdb Gsource
# chgrp -R subversion Gsource
# chmod -R g+w Gsource

이게 끝이다.. 이제 서브버전에 접속 하면된다.
svn+ssh://guda@ip-address/home/project/Gsource  

부족한 부분이나 다른 상세한 방법에 대해 알고 싶다면 아래 링크를 참조
http://wiki.kldp.org/wiki.php/Subversion-HOWTO


반응형
아파치 설치
공식 사이트:  http://httpd.apache.org

1. 아파치 최신 버전을 내려받도록 한다.
      본인은  httpd-2.2.15.tar.gz 를 대상으로 설치

2. 컴파일 및 설치 (root권한으로)

/usr/local/src 에 다운 받아 놓은 파일의 압축을 해제한다.

# tar xvzf httpd-2.2.15.tar.gz
# cd httpd-2.2.15

--컴파일 실행 및 설치 과정
# ./configure --prefix=/usr/local/apache2 --enable-modules=so --enable-so
# make && make install

3. 아파치의 설치 과정이 끝났다.  아파치가 자동 시작 되도록 설정하자.
-- 서비스 등록
# cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
# chkconfig -add httpd

-- 서비스 확인
# chkconfig --list|grep httpd
-- httpd                     0:off  1:off  2:on   3:on   4:on   5:on   6:off
 
PHP 설치
공식사이트 : http://www.php.net

-- 아래 두 패키지를 먼저 설치하자.
# apt-get install libxml2-dev libxslt-dev libjpeg62-dev libpng12-dev  libcurl4-openssl-dev

1. /usr/local/src 에 php-5.2.13.tar.gz 를 다운 받도록 하자.

2. 컴파일 및 설치 (root권한으로) 
# tar xvzf php-5.2.13.tar.gz
# cd php-5.2.13

#  ./configure --prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs  \
--with-config-file-path=/usr/local/apache2/conf   \
--with-zlib-dir=/usr/local/  \
--with-gd=shared \
--with-xmlrpc \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-curl=/usr/lib \
--with-zlib \
--with-jpeg-dir=/usr/lib \
--with-png-dir=/usr/lib \
--enable-mbstring \
--with-libxml-dir=/usr/local/ \
--with-xsl=/usr/local/ \
--with-iconv \
--enable-sockets \
--enable-pdo \
--with-pdo-oci=$ORACLE_HOME  \
--with-oci8=$ORACLE_HOME  \
--enable-sigchild \
--with-openssl  \
--with-mysql=/usr/local/mysql

# make && make install

3. php.ini  파일을 복사해서 넣자.
# cp php.ini-dist /usr/local/apache2/conf/php.ini

4. httpd.conf 파일에 다음 내용을 삽입한다.

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

-- 아래 빨간 부분이 추가할 부분들이다.

ServerName localhost

306  AddType application/x-compress .Z
307  AddType application/x-gzip .gz .tgz
-- 아래 부분에  추가하도록 하자.--

AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps 


-- 그리고 맨 하단 php.ini 파일 경로를 삽입
PHPIniDir "/usr/local/apache2/conf/"

LoadModule php5_module modules/libphp5.so   <<= httpd.conf에 잘 들어가있는지 확인

5. 아파치에서 오라클 연동시에 사용하는 환경 변수 값을 셋팅해 준다.
(오라클 설치시 셋팅했던것과 동일하게 설정해주도록 한다.)

# vi /usr/local/apache2/bin/envvars

export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/11g
export ORACLE_SID=oracle

--이 윗부분에 추가해 주도록 하자.
LD_LIBRARY_PATH="/usr/local/httpd/lib:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH

6. 웹서비스 루트 경로에 phpinfo 파일을 만들어 확인하자.
# vi /usr/local/apache2/htdocs/test.php

 <? phpinfo(); ?>

아래와 같이 OCI 연동 부분을 확인 할 수 있다.


오라클과의 연동확인 코드는 testOra.php 파일을 작성해 확인해 보자.

# vi testOra.php

<?

    $conn = oci_connect("scott", "tiger", "127.0.0.1/oracle");

    $stid = oci_parse($conn, "SELECT * FROM EMP");
    oci_execute($stid);

    $nrows = oci_fetch_all($stid, $results);

    echo "<html><head><title>Oracle PHP Test</title></head><body>";
    echo "<center><h2>Oracle PHP Test</h2><br>";
    echo "<table border=1 cellspacing='0' width='50%'>\n<tr>\n";
    echo "<td><b>Name</b></td>\n<td><b>Salary</b></td>\n</tr>\n";

    for ($i = 0; $i < $nrows; $i++ ) {
      echo "<tr>\n";
      echo "<td>".$results["EMPNO"][$i]."</td>";
      echo "<td>".$results["ENAME"][$i]."</td>";
      echo "</tr>\n";
    }

    echo "<tr><td colspan='2'> Number of Rows: $nrows</td></tr></table>";
    echo "<br><em>If you see data, then it works!</em><br></center></body></html>\n";

?>



ZendOptimizer 설치
공식사이트 :  http://www.zend.com

ZendOptimizer는 PHP의 속도를 향상시켜준다.

1. ZendOptimizer을 내려받도록 한다.
      본인은  ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz 를 대상으로 설치

2. 압축해제 및 설치 (root권한으로)

/usr/local/src 에 다운 받아 놓은 파일의 압축을 해제한다.

# tar xvzf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
# cd ZendOptimizer-3.3.9-linux-glibc23-i386

3. 프로그램 설치
3.3.3 이전 버전은 install명령어를 제공하여 설치 되었지만 3.3.9 버전부터는 제공되지 않는다.
(참고: 3.3.9 버전은 php 5.3.0 이상은 제공하지 않는다.)

3-1 일단 설치된 php 버전을 확인하자
# /usr/local/php/bin/php -v
PHP 5.2.13 (cli) (built: Jun 30 2010 18:49:52)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

3-2 php 버전에 따른 Zend 모듈을 복사 하도록 하자.
# cd data
# cp 5_2_x_comp/ZendOptimizer.so  /usr/local/php/lib/

3-3 php.ini 파일에 Zend 관련 설정
# vi /usr/local/apache2/conf/php.ini

[Zend]
 zend_optimizer.version=3.3.9
 zend_extension=/usr/local/php/lib/ZendOptimizer.so

4. 설치 확인
# /usr/local/php/bin/php -v

PHP 5.2.13 (cli) (built: Jun 30 2010 18:49:52)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies   <== 정상설치 확인.

이로써 Ubuntu 10.04 + APACHE + PHP + ORACLE 연동에 대한 포스팅이 완료 되었다.
우분투에 오라클과 PHP 연동 관련 자료가 없어서 삽질해가며 설치 하였다.
고생한 만큼 자료를 정리하면 다음에도 수월하게 작업할수 있기에 시간은 좀 걸렸지만 나름 만족한다.
이후 포스팅에서는 여기에 JSP용 언어 서버를 구성하도록 하겠다.
반응형
데이터베이스로 Oracle을 사용하려고 Mysql은 설치하지 않을 생각이였다.
근데 기존 프로젝트를 서버에 올리고자 다시 Mysql을 설치 하지 않을수 없었다.

일단 Mysql 설치 방법으로는 apt-get 을 이용한 쉬운 방법이 있지만 다른 것들과의 연동을 위해
소스 설치로 설정하는 방법에 대해서 기술하겠다.

1. 소스다운 & 압축해제
# cd /usr/local/src
# wget http://ftp.linux.co.kr/pub/mysql/mysql-5.1.32.tar.gz  
# tar xvzf mysql-5.1.32.tar.gz

2. 컴파일 & 설치
# cd mysql-5.1.32
# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --with-charset=utf8
--with-charset=euckr --with-extra-charsets=all  --sysconfdir=/etc --enable-thread-safe-client
# make
# make install

3. 디비 생성 및 세부설정
# /usr/local/mysql/bin/mysql_install_db
# cat >> /etc/ld.so.conf
/usr/local/mysql/lib
# ldconfig
# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
# groupadd mysql
# useradd -M -g mysql -s /bin/false mysql
# chown root.mysql -R /usr/local/mysql/
# chown mysql.mysql -R /usr/local/mysql/data
# cd /usr/local/mysql/bin

4. my.cnf 오류처리
# vi /etc/my.cnf
# Disable Federated by default
#skip-federated(주석처리)

5. 데몬 실행 & 관리자 루트 비밀번호 생성
# ./mysqld_safe --user=mysql &
# ./mysqladmin -u root -p password 1234
Enter password:

6. 환경변수에 PATH 등록
# vi /etc/profile
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
# source /etc/profile

7. 설치 확인
# mysql -u root -p
Enter password:

mysql> 

환영 메시지 출력시 완료......

8. 데몬 자동실행 등록
# cd /usr/local/mysql/share/mysql
# cp mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld on

이제 Mysql 설치는 완료 되었고 외부 접속을 허용하도록 하자.
특정 사용자 계정의 외부접속을 위해 root 를 예로 들도록 하겠다.

1. mysql 접속 후 mysql database 선택
mysql> use mysql;

2. user 테이블 살펴보기
mysql> select host, user, password from user;

root 의 host 값들은 localhost, 127.0.0.1 등으로 기본 등록되어 있지만, 외부접속을 나타내는 값이 없다.
특정 아이피로 지정할 수도 있지만 여기선 % 기호로 어디서든 접속 가능하게 만든다.

3. 권한 설정
mysql> grant all privileges on *.* to 'root'@'%' identified by '패스워드';
Query OK, 0 rows affected (0.03 sec)

4. 등록확인하기
mysql> select host, user, password from user;

root 계정의 host 필드에 % 가 등록되었는지 확인한다.

5. refrash
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

그리고 방화벽을 사용한다면 방화벽을 열어주도록 하자.
이로서 Mysql 설치가 완료 되었다.

외부 접속 툴로는 SQLGate 2010 for MySQL Developer 를 사용한다.(본인은)
http://www.antwiz.com/kr/   <== 여기에서 다운 받을수 있다. 개인버전 프리~

+ Recent posts