Apache 웹서버에서 확장자가 php인것을 인식하지 못해서 그런것
같습니다.
참고로 아래와 같이
어쩌구 하는 부분을 찾던지 아니면
VI 에서 /php 해서
#
# And for PHP 4.x, use:
#
어쩌구 하는 부분에서 아래 내용을 비교해서
없으면 추가합니다.
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddType application/x-tar .tgz
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php .php .html
AddType application/x-httpd-php .php .php
그리고 apache 를 재시작하면 됩니다.
그리고 다른분이 답변하신대로 설치하신 디렉토리를 정확히
아셔야 합니다.
보통 /usr/lcoal/apache/conf/httpd.conf 인데...
소스를 다운받아서 설치하셨다면
./configure --prefix=/usr/local/apache 식으로
지정을 안하셨다면 다른곳(/etc...)에 설치되었을 수도 있습니다.
아니면 설치가 잘못된것이니...RPM 방식 말고 소스를 다운받아서
직접 컴파일하신후 설치하시면 됩니다.
저같은 경우에는 아예 리눅스 설치할 때부터 Apache는 설치 안하고
나중에 소스컴파일 방식으로 설치합니다.
아래는 제가 설치하는 방법입니다. 참고하세요...
필요없는 부분은 제외하고 설치하시면 될겁니다.
====================================================
*** 주의사항 ***
> rpm -qa | grep apache 해서 나오는 모든 rpm 제거요망..
> rpm -qa | grep mysql 해서 나오는 모든 rpm 제거요망..
> rpm -qa | grep squid 해서 나오는 모든 rpm 제거요망.
우선 소스는 다음과 같습니다.(2000.6.15일 기준)
jdk1_2_2-linux-i386.tar.gz
jsdk20-solaris2-sparc.tar.Z
mysql-3.22.32.tar.gz
apache_1.3.12.tar.gz
php-4.0.0.tar.gz
ZendOptimizer-Beta4-Linux-glibc2.1.tar.gz
ApacheJServ-1.1.1.tar.gz
squid-2.3.STABLE3-src.tar.gz
위의 내용을 보시면 아시겠지만 자바관련툴과 DBMS 인 MySQL, 웹서버인 Apache, Script 언어인 PHP
, Php 속도향상을 위한 Zend Optimizer, Servlet 구현을 위한 Apache Jserver, 속도향상을 위한 캐쉬 Squi
d 입니다. 우선 설치하는 순서는 개략적으로 다음과 같습니다.
* Jdk -> Jsdk -> MySQL -> Apache #1 -> Php -> Zend Optimizer
-> Apache Jserver -> Apache final -> Squid
음.. 아!! 운영체제를 말씀을 안드렸네요...
얼마전에 세미나에 참석해서 얻은 Wow-Linux 입니다.
Kernel 은 2.3.14 더라구요.. 2.3.15 를 포함해서.. 하위버젼에 치명적인 버그가 있다지요??
암튼.. 그건 그거고.. 먼저 Jdk 를 깔아보겠습니다.
아 그리고.. 모든 소스는 /usr/local/src 디렉토리에 넣으세요!!
소스관리차원에서 한곳에 넣어두는 것이 최상입니다.
*****************
*** Jdk 1.2.2 ***
**************************************************************************
우선 압축을 풉니다.
> tar xvfz jdk1_2_2-linux-i386.tar.gz
그리고.. 이건 압축을 푼 디렉토리를 다른곳으로 옮깁니다.
> mv jdk1_2_2 /usr/local/
이렇게 하면 /usr/local/jdk1_2_2 가 생깁니다.
차후 jdk 업그레이드를 고려해서 소프트링크를 걸어놉니다.
> ln -s /usr/local/jdk1_2_2 java
이러면 /usr/local/jdk1_2_2 는 /usr/local/java 와 같게됩니다.
사실 같은것이 아니라 /usr/local/java 는 /usr/local/jdk1_2_2 의 링크가
되는 것입니다. 아시죠?? 윈도우즈의 단축아이콘.. 그런겁니다.
그리고.. 모든 사용자들의 공통적인 profile 인 /etc/profile 을 수정합니다.
> vi /etc/profile 하시고..
다음을 추가하세요...
어디에 추가하면요... PATH="...." 어쩌구 하는 곳 다음줄입니다.
PATH="$PATH:/usr/local/java/bin"
그리고 아래 문장은 export PATH ... 어쩌구 하는 다음줄에 하시고요...
export JAVA_HOME="/usr/local/java"
export CLASSPATH="."
(저장후 종료)
여기까지.. jdk 설치가 끝난겁니다.. 잘 되었는지 확인방법은 다시 로그인 하신후에..
java -version 해보세요..
잘되죠?? 그럼 ok!!!!!!!!!
다음 JSDK 입니다.
****************
*** Jsdk 2.0 ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
Jsdk 파일을 압축을 풉니다.. 어!! 그런데.. 이건 Sun Solaris 용이 아니냐구요??
상관없답니다. 이미 검증이 되었답니다. 지금도 2.1이 나왔긴 한데.. 리눅스에서는
아직 검증이 안되었답니다. 맞죠???
> tar xvfz jsdk20-solaris2-sparc.tar.Z
그리고.. 압축을 푼 디렉토리역시.. /usr/local 밑으로 옮깁니다.
> mv JSDK20 /usr/local/
그리고 또다시 업그레이드를 대비해서.. 소프트링크를 설정합니다.
> ln -s /usr/local/JSDK20 JSDK
그리고.. 또다시.. 모두에게 적용되는 /etc/profile 을 수정합니다.
> vi /etc/profile
하신후에.. 다음을 추가합니다. 어디냐구요?? 흠.. PATH=.. 어쩌구하는 부분 아래에..하시면
됩니다. PATH="$PATH:/usr/local/JSDK"
아래줄은 위의 jdk 를 설치할때 기술했던 부분인데.. 수정하시는 겁니다.
:/usr/local/JSDK/lib/jsdk.jar 가 추가되었죠..
export CLASSPATH=".:/usr/local/JSDK/lib/jsdk.jar"
(저장후 종료)
여기까진 Jsdk 설치가 끝난것입니다. 그럼이젠 여러분은 JDK와 JSDK 툴을 사용하실 수 있을것
입니다. 다음으로 공개용 DBMS인 MySQL 을 설치해보도록 하겠습니다.
*************
*** MySQL ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
압축을 풉니다.
> tar xvfz mysql-3.22.32.tar.gz
다음에 디렉토리를 이동합니다.
> cd mysql-3.22.32
글구.. 아래와 같이.. compile install 환경을 맞춥니다.
> ./configure
--prefix=/usr/local/mysql
--with-charset=euc_kr
--with-unix-socket-dir=/usr/local/mysql/sock/socket.mysql
--localstatedir=/mysqldb
위의 환경을 설명하자면..
--prefix=/usr/local/mysql : 설치되는 디렉토리는 /usr/local/mysql 이고..
--with-charset=euc_kr : 사용하는 언어환경은 한국어이고요..
--with-unix-socket-dir : 소켓정보파일을 /usr/local/mysql/sock/socket.mysql 로 지정생성하겠다는 것입니
다. 이 부분을 기술하지 않으면.. 당연히 /tmp/(디폴트 소켓이름) 으로 사용됩니다. (옵션!!
!! 알죠???) --localstatedir=/mysqldb : 이것은 데이타베이스파일을 어디에다가 생성할것인지 지정
해주는 것입니다. (옵션!!) 위의 환경이 잘 수행되었다면... 아래와 같이. 컴파일을 한후에.
. 설치를 합니다. > make
> make install
음.. 잘 끝났죠...
그리고.. 기본적인 데이타베이스와 테이블을 생성해야 합니다.
/usr/local/mysql 로 디렉토리를 이동하시고..
> cd /usr/local/mysql
기본 데이타베이스를 생성합니다.
> ./bin/mysql_install_db
그리고.. 데이타베이스를 구동합니다.
> ./bin/safe_mysqld --language=korean &
아주 잘되죠.. ^^
그리고.. 아래와 같이.. admin 암호를 지정합니다. 이거 한번 지정하면.. 고치기 여려우니깐..
신중하게 하세요.. 제가 고치는 방법을 몰라서.. 어려운 건가?? 암튼.. 이거 다쓰고.. 알아
볼거예요... > ./bin/mysqladmin -u root password 'rootpass'
잘되었는지.. 확인하는 방법은
> ./bin/mysql -u root -p
하시고.. password : 라고 나오면.. 지정한 암호를 입력한후에.. 엔터를 칩니다..
그러면..
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 4 to server version: 3.22.32
Type 'help' for help.
mysql>
위와 같이 나옵니다.. 성공이죠..
mysql> show databases; 하면.. 2줄 나오죠??
mysql> use mysql;
mysql> show tables;
그럼 쭈욱 나옵니다..
잘 되었네요.... ^^ 그럼.. 이걸.. 편리하게.. 구동하고. 정지하는걸 알아볼까요???
> cp /usr/local/mysql/support-files/mysql.server /usr/bin/
이라고 한후..
> chmod 755 /usr/bin/mysql.server
> vi /usr/bin/mysql.server 라고 한후
$bindir/safe_mysqld --user=$mysql_daemon_user --pid-file=$pid_file --datadir=$datadir &
위의 줄을 아래와 같이 바꿉니다. --language=korean 이 추가되었죠?? ^^
$bindir/safe_mysqld --language=korean --user=$mysql_daemon_user --pid-file=$pid_file --datadir=$datadir &
다음에 저장한고 나온후 테스트를 해봅니다.
> mysql.server stop (정지시)
> mysql.server start (구동시)
아주 쉽죠... ^^
그리고 다음은 이제.. Apache 설치 #1 입니다. 왜?? #1 이냐구요??? 나중에 또 본격설치를 하니
깐요.. ^^ *****************
*** Apache #1 ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
압축을 풉니다.
> tar xvfz apache_1.3.12.tar.gz
디렉토리를 이동하고요..
> cd apache_1.3.12
아래와 같이 실행합니다.
> ./configure
이걸로 여기선 끝... ^^ 아~~~ 쉽다..
다음으론.. PHP를 설치해보도록 하겠습니다.
그런데 여기서 주의깊게 볼것은.. 아파치를 DSO 지원지원으로 설치하는 것이 아니라..
아파치와 함께 구동될 모듈들을 아예 아파치에 오브젝트를 포함시킬것입니다.
이유는 퍼포먼스입니다.. 이렇게 해서 설치할 것이.. PHP, Jserv 입니다.
***************
*** Php 4.0 ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
압축을 풉니다.
> tar xvfz php-4.0.0.tar.gz
다음에 디렉토리를 옮겨버립니다.
> mv php_4.0.0 /usr/local/php_4.0.0
다음은 소프트링크를 만듭니다. 왜냐면.. 업그레이드를 위해서죠.. ^^
> ln -s /usr/local/php_4.0.0 php
다음으로 디렉토리를 이동하고
> cd /usr/local/php
다음과 같이 설정합니다.
> ./configure
--with-apache=/usr/local/src/apache_1.3.12
--with-mysql=/usr/local/mysql
--with-oracle=/oracle/8i
--with-oci8=/oracle/8i
--with-track-vars
--enable-sigchild
--disable-debug
위의 설정을 해설하자면..
--with-apache=/usr/local/src/apache_1.3.12 : 아파치 컴파일설치시에 포함시킬것이기때문에
어디에 아파치 소스가 있는지 지정해준다.
--with-mysql=/usr/local/mysql : MySQL 이 설치된 디렉토리를 지정해준다. 이유는 MySQL 모듈을
포함하기 위해섭니다.
--with-oracle=/oracle/8i : 저는 Oracle 8i 를 설치해서 사용하고 있어서 써준것입니다.
--with-oci8=/oracle/8i
--with-track-vars : track var 를 사용하는 것입니다.
--enable-sigchild : 나중에 오라클과 PHP 가 연동이 되었을때 좀비 프로세스 방지를 위한 조치입
니다 --disable-debug : Zend Optiimizer 가 Debug 모드를 지원하지 않기때문에 설정합니다.
다음과 같이 해서 컴파일하고 설치합니다.
> make
> make install
그리고.. php 설정파일을 다음과 같이 복사합니다.
> cp php.ini-dist /usr/local/lib/php.ini
PHP 4.0 을 설치했으니.. 퍼포먼스좀 높여볼까요... 그럼.. Zend Optiomizer 를 설치하셔야죠..
**********************
*** Zend Optimizer ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
압축을 풉니다.
> tar xvfz ZendOptimizer-Beta4-Linux-glibc2.1.tar.gz
그리고 압축을 푼 디렉토리로 이동합니다.
> cd Zend*
설치할 디렉토리를 만듭니다.
> mkdir /usr/local/Zend
> mkdir /usr/local/Zend/lib
파일을 복사합니다.
> cp /usr/local/src/ZendOptimizer-Beta4-Linux-glibc2.1/ZendOptimizer.so /usr/local/Zend/lib/
PHP 에 Zend Optimizer 모듈 인식을 위해..다음 파일을 편집합니다.
> vi /usr/local/lib/php.ini
다음을 추가합니다.
zend_optimizer.optimization_level=7
zend_extension="/usr/local/Zend/lib/ZendOptimizer.so"
(저장후 종료)
여기까진.. 일단 끝이죠.. ^^
이젠 Apache Jserver 를 설치해볼까요...
***************
*** Jserver ***
**************************************************************************
다시 /usr/local/src 로 디렉토리를 바꾸고..
> cd /usr/local/src
압축을 풉니다.
> tar xvfz ApacheJServ-1.1.1.tar.gz
압축을 푼 디렉토리로 이동합니다.
> cd Apache*
자 그럼.. 아래와 같이 설정 파일을 셋팅합니다.
> ./configure
--prefix=/usr/local/jserv
--disable-debugging
--with-apxs=/usr/local/src/apache_1.3.12/src/support/apxs ==> 정확한 경로를 적는다.
위의 방식으로 안될때는
--with-apxs~어쩌구 대신
--with-apache-src/usr/local/src/apache_1.3.12 을 넣는다.
--with-jdk-home=/usr/local/jdk1.2.2
--with-JSDK=/usr/local/JSDK/lib/jsdk.jar
위의 설정 파일을 설명해볼까요..
--prefix=/usr/local/jserv : Jserver 를 설치할 디렉토리
--disable-debugging : 역시 debug 금지네요...
--with-apache-src=/usr/local/src/apache_1.3.12 : 이거역시..아파치설치시에
모듈을 포함시키기위해섭니다.
컴파일하고 설치합니다.
> make
> make install
음.. 그러면.. 이젠... 아파치를 완벽하게 설치해볼까요...
다시 /usr/local/src/apach* 로 이동합니다.
> cd /usr/local/src/apache*
그다음은 아래와 같이..
> ./configure
--prefix=/usr/local/apache
--activate-module=src/modules/php4/libphp4.a
--activate-module=src/modules/jserv/libjserv.a
위의 내용은
--prefix=/usr/local/apache : 설치할 디렉토리
--activate-module=src/modules/php4/libphp4.a : 포함할 모듈
--activate-module=src/modules/jserv/libjserv.a : 포함할 모듈
다음은 아래와 같이..
> make
> make install
> killall httpd
> cd /usr/local/apache
> ./bin/apachectl restart
> vi ./htdocs/test.php4
<?php
phpinfo();
?>
(저장후 종료)
다음 파일을 편집합니다.
> vi /usr/local/apache/conf/httpd.conf
아래를 추가합니다.
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php .html
AddType application/x-httpd-php .htm
AddType application/x-httpd-php .php4
그리고 이 아래줄은 맨 아래에 추가합니다.
include /usr/local/apache/conf/jserv/jserv.conf
(저장후 완료)
--> PHP 확인 >>>>> Netscape 에서 http://(hostip)/test.php4 를 확인한다.
Zend Optimizer 는 Php 로고 그림 왼쪽에.. with Zend Optimizer 라는 글로 확인!!!
--> Jserv 확인 >>> Netscape 에서 http://(hostip)/servlets/Hello 를 확인한다.
==============================================================
헉! 너무 긴가요..
도움이 되었으면 좋겠습니다.