기본적인 설치는 완료되었습니다.
이 포스팅 시르즈 초반에 말씀드렸듯이 지금까지의 과정은
로컬환경에서 가상머신을 이용해서 웹서버를 테스트 할 수 있도록 작성된것으로
서비스용 서버셋팅과 차이점이 있다는 것을 밝힙니다.
서비스를 위한 서버설치 및 셋팅은 차 후 포스팅을 통해서 차차 정리하기로 하고
원래 목적대로 로컬에서 가상머신에 리눅스를 설치하고 로컬과 인터넷 공유기환경에서
테스트및 개발을 목적으로 하는 설정입니다.
우선 로컬 컴퓨터에서 가상의 도메인으로 우리가 설정한 서버로 연결될 수 있게
윈도우 hosts파일을 수정하겠습니다.
파일 위치는 다음 그림에서 처럼 C:\Windows\system32\drivers\etc\hosts
경로상에 존재합니다.
우선 hosts 파일을 수정하기 위해서는 알약등의 백신프로그램을 종료해야합니다.
백신프로그램이 실행되는 동안 해당파일을 감시하고 있기때문에 수정이 되지 않는 경우
가 생기고 백신프로그램을 종료한 뒤 editplus 나 notepad++ 등과 같은 에디터툴을
관리자 권한으로 실행한 후 수정해야합니다.
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
192.168.0.8 linux.pc
192.168.0.8 wp.linux.pc
192.168.0.8 tc.linux.pc
위와 같이 가상머신의 주소와 연결될 가상의 도메인을 입력후 저장하면
등록된 호스트명으로 인터넷 주소창에 입력하면 자동으로 해당 아이피로 연결을 시켜줍니다.
알약이나 여타 바이러스 백신 프로그램에서 hosts파일의 변경을 감시하는 이유는
누군가 은행이나 증권사이트 주소를 입력하면 미리 만들어놓은 피싱사이트로 자동연결
되게끔 악성코드로 hosts 파일을 변경하는 것을 방지하기 위함입니다.
이렇게 수정후 다시 백신프로그램을 실행하면 hosts파일 변경사실을 확인하고
경고를 표시하게 됩니다.
알약의 경우는 파일변경이 확인되었다는 경고를 표시하고 이후 표시여부를 묻는 메뉴가
나타나 지속적으로 경고에 시달릴 경우는 없지만 여타 다른 백신은 확인해보시기 바랍니다.
이제 서버상에서의 설정을 알아보겠습니다.
php관련 설정은 php.ini 파일을 수정해서 기능을 변경할 수 있습니다.
설치과정을 따라 하셨다면 /usr/local/apache 디렉토리상에 파일이 존재할 겁니다.
php.ini 파일을 수정하는 경우는 웹상에서 업로드할 파일의 용량을 2Mbyes 보다 크게
허용하거나 php스크립트 실행시간을 늘리거나 혹은 스크립트 실행시 사용할 메모리
용량을 늘리거나 하는 용도로 손을 대는 경우가 많습니다.
그 외 php환경을 설정하는 부분도 있으니 열어서 어떤 것이 있는지 한번정도는
확인해보시기 바랍니다.
음 그리고 설명하려고 하면 한도 끝도 없는 apache설정 .......
1.3.X 대 버젼에서는 /usr/local/apache/conf/httpd.conf 파일만 건드리면 되는데
2.X 대 버젼으로 넘어가면서 설정파일을 여러개로 쪼개놨습니다.
1.X대 버젼을 사용한 유저로써 그 긴 파일을 눈알 빠지게 쳐다보고 원하는 부분을
찾아서 수정하느라 고생한 기억이 있어서 이렇게 설정부분을 각각의 파일로 나누어
놓은 것은 대 찬성이지만 각각의 파일을 다 설정하려면 귀찮아졌다는 생각도 듭니다.
지금까지 쭉 따라하신 분들은 /usr/local/apache/conf 디렉토리 상에 설정파일이
있을겁니다.
가장 기본설정파일은
/usr/local/apache/conf/httpd.conf 파일입니다.
그리고 추가적인 설정파일들은
/usr/local/apache/conf/extra 디렉토리에 포함된 파일들이죠.
httpd-vhosts.conf 가상호스트를 설정하는 파일입니다.
httpd-userdir.conf 웹서비스를 할 계정디렉토리를 설정하는 파일입니다.
아~ 설명을 하자면 끝이 없을것 같고 하지않고 넘어가기도 힘들고 ;;;
https://httpd.apache.org/docs/2.0/ko/
위 링크에서 궁금증이 생길때마다 한번씩 찾아보시고 해야할것 같아요 ㅋ
모든 기능을 다 설명할 수도 다 사용하는 기능도 아니고 물론 모든기능을 알고 있는
상태도 아니니 그렇다고 덩그러니 링크만 적어놓기도 뭐해서
최소한의 설정으로 테스트하는 제 테스트서버의 설정파일을 첨부하오니
참고하시고 궁금한건 위 링크에서 문서들을 읽어보세요 ^^;;
제가 수정한 파일만 올립니다. 이게 최선이다가 아니라 참고하시라는 의미로올리는 것이니 따지시는건 사절입니다 ㅋ 서비스용이 아닌 테스트용이란 점 이해해주세요 ^^
여기까지 끝났다면
서버가 재부팅 될때 mysql과 apache가 자동으로 시작하게끔
/etc/rc.local 파일에 다음과 같이 설정을 해줍니다.
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
## mysqld start
/usr/bin/mysqld_safe &
## apache start
/usr/local/apache/bin/apachectl start
이제 남은 설정은 iptables 를 이용한 방화벽 설정입니다.
로컬 가상머신이라 별 신경쓰지않고 쓰겠다면
iptables -F
이 한줄을 /etc/local 파일에 입력하면 되지만 이 부분은 좀 더 자세히 알아봐야할거 같아서 다음 포스팅에 정리를 하겠습니다.
지금까지 단순히 테스트를 위한 vmware를 이용한 리눅스 + apm 설치 및 설정내용이었습니다.
실제 서비스를 위해서는 보강되어야 할 부분이 많고 신경써야할 부분도 늘어나지만
여기에 살을 더 붙인다는 개념이니 한걸음 씩 나가보도록하죠 ㅜㅜ