설치는 한글 환경만 선택하고 쭉 엔터 눌러서 완료. 단 외부 도메인이 연결되어 있어서 호스트네임 잡은거 외에는 거의 습관적 엔터로 진행.
쭉 설치하고 root 계정 활성화 하기 위해서 구글링 : )
# sudo passwd root
즉, 루트 패스워드를 세팅하면 루트로 로그인 가능하다. 테스트 서버를 우분투로 밀면서 아무래도 루트 계정 열어두는게 지금은 여러모로 편하니까... 업데이트 한방 돌려주고!
apt-get update
apt-get upgrade
apt-get dist-upgrade
아파치 대신 엔진엑스를 사용하기로 결정하고 대충 구상 후 돌아가고 있는 서비스 확인을 위해 리스트오픈파일 명령
# lsof -i
처음 세팅할 때 SSH 와 Mail 서버를 체크했더니 깔끔히 그 두개만 서비스 되고 있군.
사용자용 계정 추가
# useradd -b /home -s /bin/bash -m -p 패스워드 사용자아이디
# ls /home
FTP 서비스를 위해서 vsftpd 설치
# apt-get install vsftpd
# vi /etc/vsftpd.conf
NODEJS 설치.
# apt-get install python-software-properties
# add-apt-repository ppa:chris-lea/node.js
# apt-get update
# apt-get install nodejs npm
아 쉽네.
nginx 공식홈페이지 들어가서 보니 그냥 install 해도 될 것 같아서 해봄
http://nginxlibrary.com/ubuntu-latest-nginx/ 참고하여 최신버전으로 유지
# add-apt-repository ppa:nginx/stable
# # apt-get update
# apt-get install nginx
# /etc/init.d/nginx start
# ps -ef | grep nginx
# find / -name 'nginx.conf'
# vi /etc/nginx/nginx.conf
우선 아파치로 따지면 Virtual Host 기능을 위해 서버블록 구문 추가 후 리스타트
# vi
:set ai
:set ts=4
:set st=4
http {
##
# Log Format
##
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
##
# Server Blocks
##
index index.html;
server {
server_name ***.kr;
#access_log /home/***/***.kr.access.log main;
root /home/***/www;
}
server {
server_name dev.***.kr;
#access_log /home/***/dev.***.kr.access.log main;
root /home/***/dev;
}
##
# Basic Settings
##
# /etc/init.d/nginx restart
Git 클라이언트 설치
apt-get install git
PHP 관련 설치를 위해 어떤 패키지가 있는지 점검한 후 골라 설치해보자
apt-cache search php5
정말 많군...
# apt-get install php5-cgi php5-cli php-pear php5-fpm php5-xdebug php5-gd php5-mcrypt php5-suhosin php-doc phpunit phpunit-doc php5-mysql php5-memcache memcached
nginx 의 세팅을 변경해준다. 처음에 기록했던 내용은 지우고 원래 상태로 두고 /etc/nginx/sites-enabled/default 의 설정을 조작하도록 한다. php 를 사용할 준비를 마친 후 PHP 서비스용 서버블럭을 만든다.
server {
server_name **.****.kr;
#access_log /home/****/**.****.access.log main;
root /home/****/**;
index index.html index.htm index.php;
location / {
try_files $uri $uri/ @rewrites;
}
location @rewrites {
rewrite ^ /index.php last;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
설정을 마치고 엔진엑스 리스타트
/etc/init.d/nginx restart
phpinfo() 하나 만들어서 점검해본다. 필요한 모듈이 잘 올라왔는지도 확인해본다.
MySQL 설치
# apt-get install mysql-server mysql-client
추가로 mongo 와 redis 도 설치. 역시 apt-get 을 사용하여 설치 완료. 터미널 환경을 위한 screen 과 tmux 는 이미 설치되어 있군. nodejs 앱 띄워놓고 확인작업 하려면 필수로 사용해야할 터미널 도구.
끝
'Development > Servers' 카테고리의 다른 글
zsh 사용해 봄 (0) | 2012.11.30 |
---|---|
윈도우에서 nodemon 사용시 팁 (0) | 2012.09.20 |
VSFTP 와 PHP 의 localtime 문제 (0) | 2012.09.19 |
cafe24 클라우드 호스팅 셋업 (0) | 2012.05.22 |
*NIX 용 쉘 세팅을 위한 (0) | 2011.11.20 |