2016년 7월 23일 토요일

맥 미니를 웹 서버로 활용하기 까지...2nd

서버 모듈은 별도의 폴더에 맥 미니를 서버로 사용하기 위한 관련 설정내용들을 모두 각각의 폴더를 구성하여 저장하고 있다.

/Web 하위의 /Data 폴더에는 /Sites 폴더가 있으며 이 폴더 밑에 사이트별로 폴더를 구성하여 내용들을 구성할 수 있다.

** 참고
지난 1st 포스팅에서 맥 OS에서 숨겨진 폴더와 파일들을 보는 방법에 대하여 링크를 달았었는데...

터미널모드로 듀얼 판넬로 폴더와 파일을 살펴보고 파일 폴더 속성을 변경할 수 있는 어플이 있다. 비록 비주얼 명령어는 아니고 텍스트 기반의 어플이지만 무료로 필요한 기능들을 사용할 수 있으므로 추천한다.

mc (midnight commander)라는 어플이며
다운로드는 http://superuser.com/questions/128700/midnight-commander-mc-installer-for-mac-os-x 에서 가능하다.

설치 방법은 터미널에서 brew install mc

위의 화면은 mc 의 수행화면이다.
파일과 폴더의 속성(permission)을 손쉽게 바꿀 수 있어서 사용하기 편하다.

최신 버전은 2016 발표된 4.8.17 버전이다.

MAMP(무료버전) 과 MAMP Pro(유료버전)은 손쉽게 웹사이트 설정을 할 수 있어서 편하다.
MAMP Pro는 멀티 사이트를 구성할 수 있으며, DNS 설정도 할 수 있다. 가격은 약 US $60 수준이다. 이가격으로 구매하여 사용할 바에는 OS X의 서버 모듈을 $19.9에 구입하여 사용하는 것이 더 많은 기능을 제공한다.

2016년 7월 22일 금요일

맥 미니를 웹 서버로 활용하기 까지...1st

맥 미니를 구매한 후 사이트 구축을 이런 저런 툴로 개발하다가 중단하고, 또 이리 저리 미루고 수많은 시행착오를 겪으며 갈지자로 헤메다 급기야 이제야 다부지게 새로 시작할려고 한다.
용두사미가 되지 않아야 하는데...약간의 우려가 있지만 일단 시작하면 길이 열리겠지 하는 낙관적인 생각으로 다시 시작한다.

그리고 이 기록들은 후에 유사한 일이 재발할 때 기억을 되살릴 목적으로 본인 자신을 위해 기록을 남긴다.

그동안 시행착오를 간단히 정리하면...
1) 워드프레스를 사용하기 전에 줌라(Joomla)를 이용하여 개발하다가 중단...결국 걷어냄.
2) 맥 미니를 구입하고 서버 모듈을 설치한 후($19.9 지불)
  서버 운영에 필요한 갖가지 설정을 스터디 하며 시행착오를 겪고 워드 프레스를 설치한 후 초기 시작 페이지와 다양한 테마와 플러그인을 구성했다.
  업무에 바빠 잠시 손을 놓은 것이 1년여가 휙 지나가 버리고...
그동안 시행착오 겪은 지식들 모두 기억에서 사라져 가물가물하고...
3) 이제 다시 시작하려 이것 저것 손대다가 ...
실수해서 로그인이 되지 않는 혼란스런 상태가 되어...복구 방법을 몰라...결국은 되살리기 포기.

홧김에 설치된 MAC OS 10.9.5 Mavericks 를 최신 버전인 El Captain 10.11.1로 업그레이드 한 후, 웹사이트 다시 구축하려고 이 짓거리(?)를 하고 있음...

웹사이트 개발 요구 조건을 간단히 정리하면,

1) 워드 프레스를 이용
2) Mac OS X El Captain을 설치하여 구축한다.
3) Server 모듈을 활용? or Not 활용? 이것은 아직 확실히 결정하지 못하고 있다...
4) 하나의 서버(Dynamic IP)로 2개의 사이트를 구축한다. 즉 멀티 워드프레스를 구축한다.

위 4가지 사항이 기본적인 요구사항이다.

서버 모듈을 활용하면 여러가지로 다양한 기능들을 활용할 수 있어 맥 미니 활용도를 극대화할 수 있어 향후 이것 저것 기능을 추가하기가 좋은데...

사이트 운영만 하겠다고 생각한다면...
MAC OS 가 업그레이드 될 때마다 서버 모듈을 유상 업그레이드해야 하는 수고로움이 뒤 따름....

비용 문제보다도 메인트넌스 관점에서 기억에서 사라진 구축 관련 지식들을 다시 공부해야 하는 아주 불편한 일이 발생한다.

웹 사이트 구축하는 일로 먹고사는 상황이 아니고 내 사업에 필요한 사이트만 구축하면 되는 것이라...1회성 프로젝트라 기억을 오래하지 못한다.

어쨋거나...서버 모듈을 활용하면 보다 쉽게 기반 환경 셋팅이 쉽고 클라우드 자체 구축등 확장이 유연하고 쉽다.

서버 모듈 활용 여부는 진행하면서 결정하여야 겠다.

서버 모듈 활용 여부 결정엣 앞서 우선 반드시 해야 할 내용부터 정리하면...

0) 맥 미니 OS X 10.9.5를 El Captain 10.11.1로 업그레이드.
1) 아파치 서버 설치 - 맥 미니에 내장되어 있음(OS X El Captain에도 내장...?)
2) MySQL 설치
3) phpMyAdmin 설치

서버 모듈을 사용하지 않는다면, MAMP 를 이용하여 한방에 모두 설치가 가능하지만...
우선은 엘 캡틴을 설치한 후 디폴트로 내장된 아파치를 확인하여 본다.

그런데....MAMP를 검색하여 들여다 보니...
MAMP & MAMP Pro 가 있고...MAMP는 무료 사용이고 MAMP는 유료인 대신에 OS X의 서버모듈에 있는 몇몇 기능들을 사용할 수 있고...

현재 설치된 아파치 버전은...
$ apachectrl -v
Apache/2.2.29, Server Built Mar 19 2015
별도로 설치한 것인지 아니면 디폴트로 설치되어 있던 것인지는 확실하지 않다.

php 버전은...
$ php -v
PHP 5.4.45 (cli) (built: Apr 22 2016)
Zend Engine v2.4.0
이것도 디폴트 버전인지 추가로 업그레이드 한 것인지 기억이 없다.

설치된 폴더들을 찾으려고 하니...명령어를 몰러 답답하다. 검색해서...
/private/etc/apache2 에 설치되어 있다...

* 참고
/private - OS X에서 특정 루트 수준의 디렉토리들은 실제로 /private에 위치하는 디렉토리들을 가리키는 symbolic 링크들이다. 이러한 예에는 /cores, /etc, 그리고 /var들이 있으며, 이들은 각각 /private/cores, /private/etc, 그리고 /private/var와 연결되어 있다. /private은 또한 특정 주변 장치들의 드라이버들을 저장하고 있는 디렉토리들을 포함하고 있다.

이외에도 보이지 않는 폴더에 대한 상세한 정보는 아래를 참고한다.
http://appletree.or.kr/forum/viewtopic.php?id=91

그렇지만 서버 모듈을 설치하면 관련 필요한 내용들을 /Library/Server 폴더에 구성하고 설정한다.
즉 서버 모듈은 웹 서비스와 관련된 아파치, php 구성등의 관련 정보는 모두 /Library/Server/Web 및에 구성하게 된다.

Web 폴더 하위에는 /Config 와 /Data 폴더가 있으며,
아파치와 php 정보는 /Config 밑에 저장된다.
사이트에 필요한 관련 파일들은 /Data 밑에 폴더이름을 정하여 구성된다.

오늘은 여기까지...

** 추가 내용
Server 모듈이 엘캐피탄에서 5.0.4 버전으로 업데이트 되면서...
뒤늦게 알게 된 사실이 "OS X Server 5.0 부터 시스템 버전에 무관하게 작동한다. OS X Yosemite 10.10.5 와 OS X El Capitan 10.11이 설치된 맥에서 동일한 버전의 Server 앱을 사용할 수 있다" 이다.

즉 서버 모듈 5.0 부터 OS X 시스템 버전과 상관없이 사용이 가능하게 되었다는.
그동안에는 시스템 OS가 업그레이드 되면 서버모듈을 사용할 수가 없어서 ...추가 구입해야 했었는데, 이후 추가 구입없이도 5.0 버전으로 계속 사용이 가능하다...즉 5.0.4 버전으로 시스템 업그레이드 되어도 함께 업그레이드하지 않아도 사용이 가능하게 되었다...

그럼 구매하여 활용하는 것도 좋겠다는 생각이 든다.