10. CentOS 7에 Apache 2.2, mysql 5.1, php 5.2 설치하기
페이지 정보
작성자 관리자 댓글 0건 조회 11,957회 작성일 19-10-25 23:07본문
10. CentOS 7에 Apache 2.2, mysql 5.1, php 5.2 설치하기
1. MySQL 설치하기
▶ 다운받기
해당 사이트(http://www.mysql.com)에서 다운 받으세요
# wget https://www.leelab.co.kr/down/mysql-5.1.73.tar.gz
▶ 소스 컴파일
# tar xvfz mysql-5.1.73.tar.gz
# cd mysql-5.1.73
# ./configure --prefix=/usr/local/mysql --with-charset=euckr --localstatedir=/usr/local/mysql/data
...
/bin/rm: cannot remove 'libtoolT': No such file or directory
config.status: executing default commands
Thank you for choosing MySQL!
Remember to check the platform specific part of the reference manual
for hints about installing MySQL on your platform.
Also have a look at the files in the Docs directory.
[root@localhost mysql-5.1.73]#
오류는 무시하고 진행한다.
# make
# make install
▶ 데이터베이스 설치
이제 데이터베이스를 설치한다. 반드시 다음과 같이 한다.
# /usr/local/mysql/bin/mysql_install_db
▶ MySQL 데몬 실행하기
데몬을 실행하기위해 mysql 계정이 있어야 한다.
# cat /etc/passwd | grep mysql
아무것도 나타나지 않는다면 아래와 같이 계정을 추가한다.
# useradd mysql
아래와 같이 디렉토리 권한변경을 해준다.
# chown -R mysql /usr/local/mysql/var
이제 실행할 준비가 됐으니 데몬을 실행하면 OK !!!
# /usr/local/mysql/bin/mysqld_safe &
▶ MySQL root 암호 변경하기
# /usr/local/mysql/bin/mysqladmin -u root password '1234'
위와 같이하면 암호가 1234로 바뀐다.
서비스 데몬 추가하기
# pkill mysqld
# cp -a
/usr/local/mysql/share/mysql/mysql
.server
/etc/init
.d
/mysqld
# chkconfig mysqld on
# service mysqld stop
# service mysqld start
2. APACHE Web Server 설치하기
▶ 다운받기
해당 사이트(http://www.apache.org)에서 다운 받으세요
# wget https://www.leelab.co.kr/down/httpd-2.2.34.tar.gz
▶ 소스 컴파일
# tar xvfz httpd-2.2.34.tar.gz
# cd httpd-2.2.34
# ./configure --prefix=/usr/local/httpd --enable-shared=max --enable-module=all
# make
# make install
▶ 아파치 데몬 실행하기
데몬을 종료할 때 아래와 같이 한다.
# /usr/local/httpd/bin/apachectl stop
데몬을 시작할 때 아래와 같이 한다.
# /usr/local/httpd/bin/apachectl start
아파치 데몬 실행확인
# ps axf
서비스 데몬 추가하기
# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
# chkconfig httpd on
httpd 서비스는 chkconfig 를 지원하지 않습니다
# vi /etc/init.d/httpd
#!/bin/sh
#
# Startup script for the Apache Web Server
#
# chkconfig: 345 85 15
# description: Apache is a World Wide Web server.
# processname: /usr/local/apache/bin/apachectl
# pidfile: /usr/local/apache/logs/httpd.pid
# config: /usr/local/apache/conf/httpd.conf
#
# Licensed to the Apache Software Foundation (ASF) under one or more
위 부분을 추가한다.
# chkconfig httpd on
# service httpd start
3. PHP 설치하기
▶ 다운받기
해당 사이트(http://www.php.net)에서 다운 받으세요
# wget https://www.leelab.co.kr/down/php-5.2.17.tar.gz
▶ 소스 컴파일
# tar xvfz php-5.2.17.tar.gz
# cd php-5.2.17
# ./configure --with-apxs2=/usr/local/httpd/bin/apxs --with-config-file-path=/usr/local/httpd --with-mysql=/usr/local/mysql --disable-debug
# make
/root/php-5.2.17/ext/dom/node.c: In function ‘dom_canonicalization’:
/root/php-5.2.17/ext/dom/node.c:1953:21: error: dereferencing pointer to incomplete type
ret = buf->buffer->use;
^
In file included from /root/php-5.2.17/main/php.h:38:0,
from /root/php-5.2.17/ext/dom/node.c:26:
/root/php-5.2.17/ext/dom/node.c:1955:40: error: dereferencing pointer to incomplete type
RETVAL_STRINGL((char *) buf->buffer->content, ret, 1);
^
/root/php-5.2.17/Zend/zend_API.h:472:14: note: in definition of macro ‘ZVAL_STRINGL’
char *__s=(s); int __l=l; \
^
/root/php-5.2.17/ext/dom/node.c:1955:5: note: in expansion of macro ‘RETVAL_STRINGL’
RETVAL_STRINGL((char *) buf->buffer->content, ret, 1);
^
make: *** [ext/dom/node.lo] 오류 1
[root@localhost php-5.2.17]#
# wget -O php.patch https://mail.gnome.org/archives/xml/2012-August/txtbgxGXAvz4N.txt
# patch -p0 -b < php.patch
patching file ext/dom/node.c
Hunk #1 succeeded at 1950 (offset 55 lines).
patching file ext/dom/documenttype.c
Hunk #1 succeeded at 215 (offset 10 lines).
patching file ext/simplexml/simplexml.c
Hunk #1 succeeded at 1343 (offset -74 lines).
# make
# make install
PHP 환경설정 파일을 복사한다.
# cp php.ini-production /usr/local/httpd/php.ini
# cd /usr/local/httpd/
# vi php.ini
...
short_open_tag = Off <- On으로 수정한다.
...
아파치 웹서버에 PHP모듈 추가하기 위해 아래와 같이 설정을 추가한다.
# cd /usr/local/httpd/conf/extra
# vi httpd-php5.conf
<IfModule !mod_php5.c>
LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps
</IfModule>
# cd /usr/local/httpd/conf
# vi httpd.conf
.... 마지막줄에 아래와 같이 추가한다.
# PHP
include conf/extra/httpd-php5.conf
PHP 설치확인을 위해 아래 파일을 홈페이지 홈디렉토리에 만든다.
info.php라는 파일로 다음을 작성하자.
# cd /usr/local/httpd/htdocs
# vi info.php
<?
phpinfo();
?>
아파치 데몬을 재시작한다.
# /usr/local/httpd/bin/apachectl stop
# /usr/local/httpd/bin/apachectl start
웹부라우저를 띄우고 http://localhost를 주소에 입력한다.
4. Zend Optimizer 설치하기
▶ 다운받기
해당 사이트(http://www.zend.com)에서 다운 받으세요
# wget https://www.leelab.co.kr/down/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
▶ 소스 컴파일
# tar xvfz ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
# cd ZendOptimizer-3.3.9-linux-glibc23-i386
ZendOptimizer.so 파일을 /user/local/lib/ 에 복사를 합니다.
# ls data/
현재 php-5.2.x용 ZendOptimizer는 없다. 혹시 있다면 해당 버전을 복사합니다.
# cp data/5_2_x_comp/ZendOptimizer.so /usr/local/lib
PHP 환경설정 파일에 ZendOptimizer를 추가한다.
# cd /usr/local/httpd
# vi php.ini
... 생략
[Zend]
zend_optimizer.optimization_level=15
zend_extension=/usr/local/lib/ZendOptimizer.so
하단에 위와 같이 추가한다.
5. 설치 확인하기
이제 모든 것이 제대로 되었다면 간단한 PHP 테스트파일을 만들어 확인해 보자.
info.php라는 파일로 다음을 작성하자.
[root@leelab htdocs]# vi info.php
<?
phpinfo();
?>
아파치의 htdocs라는 HTML 문서가 위치하는 곳에 놓고 브라우저를 통해 확인해 보면 아래와 같은 화면을 볼 수 있다.
6. 가상호스트 설정하기
[root@localhost ~]# cd /usr/local/httpd/conf/extra
[root@localhost extra]# vi httpd-vhosts.conf
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin leejinkwan@gmail.com
DocumentRoot "/home/leelab/htdocs"
ServerName block.leelab.co.kr
ErrorLog "logs/leelab-error_log"
CustomLog "logs/leelab-access_log" common
<Directory "/home/leelab/htdocs/">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
DirectoryIndex index.html index.php
</Directory>
</VirtualHost>
댓글목록
등록된 댓글이 없습니다.