Ubuntu에 APM 및 bind9 설치 & 세팅 practical manual

매번 찾아보기 귀찮아서 봇트윗 서버를 세팅하면서 단계별로 기록해봤다.

도메인 및 가상서버 결제

일단 업데이트부터 하고
# apt-get update
# apt-get upgarde
APM 설치 (phpmyadmin도 설치)
# apt-get install apache2
# apt-get install libapache2-mod-auth-mysql
# apt-get install mysql-server mysql-client
# apt-get install php5-common php5 libapache2-mod-php5
# apt-get install php5-mysql
# apt-get install phpmyadmin
phpmyadmin 설정을 apache에서 읽어들이도록 설정해줘야 한다.
/etc/apache2/apache2.conf의 맨 끝에 다음 내용을 추가
### added by mahler83 to enable phpmyadmin
Include /etc/phpmyadmin/apache.conf

mysql은 UTF-8 설정이 기본이 아니라 /etc/mysql/my.cnf 맨 끝에 다음을 추가
#### added by mahler83
[client]
default-character-set=utf8
[mysqld]
init_connect=SET collation_connection = utf8_general_ci
init_connect=SET NAMES utf8
character-set-server=utf8
collation-server=utf8_general_ci
[mysql]
default-character-set=utf8
재시작해준다.
# service mysql restart


bind9 설치
# apt-get install bind9
PHP에서 curl을 사용할 예정이면 library 설치
# apt-get install curl libcurl3 libcurl3-dev php5-curl
rewrite mode를 사용할 예정이면 enable 시켜준다
# a2enmod rewrite
bind9 설정하기
/etc/bind/sites 디렉터리 생성하고 도메인 이름으로 파일 생성
named.conf.local 파일에 존파일 불러들이도록 설정
# service bind9 restart

virtualhost 설정하기
/etc/apache2/sites-available 에 도메인 이름으로 파일 생성
<virtualhost *:80>
  servername abc.com
  serveralias www.abc.com
  documentroot /home/abc/public_html
</virtualhost>
# a2ensite abc.com
Skeleton을 만들어두면 차후에 사이트 추가하기가 수월하다.
/etc/skel에 log/ public_html/ 폴더를 만들고 public_html/index.php 생성해서 헬로월드 메세지
# adduser abc
# service apache2 restart
여기까지 세팅하고 본인 컴퓨터의 DNS를 작업중 서버 ip로 설정하고 도메인으로 접속해보면 곧바로 헬로월드 메세지를 볼 수 있게 된다.
도메인 등록 사이트에서 네임서버를 작업중 서버 ip로 설정한다.
기본 시간 싱크로, 주기적 아파치 및 DB서버 리셋
# crontab -e
59 23 * * * ntpdate time.nuri.net
0 6 * * * /etc/init.d/apache2 restart
5 6 * * * /etc/init.d/mysql restart
다른 서버에서 필요한 자료 옮겨오기
# tar zcvf public_html.tar public_html/
# scp public_html.tar username@1.2.3.4:/home/abc/

CC BY-NC-SA 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Leave a Comment

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.