'설정'에 해당되는 글 3건

  1. 2015.05.10 MAC에서 Apache 실행하기
  2. 2014.02.11 SSH 세션을 계속 유지하기 위한 설정
  3. 2011.11.21 MySQL 세팅 정보 확인 명령어

MAC에서 Apache 실행하기

|



Apache, PHP, MySQL을 윈도우나 리눅스에서는 APM 설치로 한다. 

맥(Mac)에서는 어떻게 할까?

Apache와 PHP는 맥에 기본으로 설치되어 있어 간단한 설정만으로 띄울 수 있다. 

MySQL은 맥용을 다운로드해서 Package를 실행해서 설치하면 된다. 

맥용 MySQL을 설치하면 "시스템 환경설정"에 MySQL 아이콘이 생겨 쉽게 시작하고 중지할 수 있다. 

맥용 MySQL을 제거하기 위해서는 MAC에서 MySQL 삭제하기 참고하자.


Mac용 Apache 설정

먼저 아파치부터 알아보면, 앞서 이야기한대로 Mac에는 아파치가 기본으로 설치되어 있다. 

예전에는 "시스템 환경설정 > 공유"에 들어가면 아래와 같이 "웹 공유"가 있어 쉽게 설정할 수 있었다. 



하지만 10.8 버전의 Mountain Lion에서는 시스템 환경설정에는 "웹 공유"가 없다.. 

그러나 아파치가 설치되어 있지는 않은 것이므로 터미널을 이용해서 아파치를 실행하는 방법을 정리해 보도록 한다. 


아파치 시작과 종료는 관리자 권한으로 실행해야 한다. 

터미널을 실행하고 다음과 같이 아파치를 시작해 보자. 


웹브라우저를 띄우고 "http://localhost/" 또는 "http://127.0.0.1"을 들어가보면 다음과 같이 아파치가 실행되어 있는 것을 확인할 수 있다. 



아파치의 중지 및 재시작 역시 터미널에서 다음 명령어로 처리하면 된다. 


사용자별 Apache 구성

이제 사용자에 따른 apache 디렉토리 구성을 해보자. 

먼저, Mac의 사용자 홈 디렉토리에 "Sites"라는 디렉토리를 생성한다. 


그리고 Apache 설정에 들어가서 사용자의 환경설정 파일을 생성한다. 

여기서 minikim 대신에 자신의 홈디렉토리명을 지정하면 된다. 


홈디렉토리명.conf 파일을 수정한다.

마찬가지로 minikim 대신 홈디렉토리명을 쓰면 된다. 

 

설정 파일의 의미를 알고 써야 하니, 각각에 대해 잠시 설명하도록 하죠. 

Options에서 Indexes는 DirectoryIndex로 설정한 index.html이나 index.php와 같은 파일이 없을 때, 디렉토리 인덱스를 보여주는 역할을 한다.

MultiViews는 클라이언트 요청에 따라 적절한 페이지를 보여준다. 예를 들면, Accept-Language:ko라면 한국어에 맞는 데이터를 전달해준다. 

AllowOverride는 All로 설정함으로써 AccessFileName 설정에 따른 아파치 인증을 사용하도록 하고 있다. 


Order allow, deny는 먼저 allow를 평가하고 이어서 deny 패턴을 체크한다는 순서를 정하는 것이다. 

Allow from all은 모든 것으로부터의 접속을 허용한다는 것이다. 

순서도 allow 먼저 정의되어 있으므로 모든 곳에서 접속이 가능하게 된다. 


이제 Apache를 재시작하면 된다. 


테스트 파일 적용

이제 사용자 디렉토리의 Sites 폴더로 이동해서 index.html 파일을 만들어 보자. 


"http://localhost/~홈디렉토리명/"으로 실행하면 결과를 볼 수 있다. 






Trackback 0 And Comment 0

SSH 세션을 계속 유지하기 위한 설정

|



SSH를 사용하다보면 접속이 끊겨서 다시 연결해야 하는 경우가 종종 있다. 

보안상의 이유로 계속 사용하지 않으면 접속 종료하기 때문이다. 


개발 중 잠시 자리를 비우고 돌아왔을 때, SSH가 종료되어 있으면 귀찮기 마련이다. 

리눅스에서 SSH 접속을 계속 유지하기 위한 설정에 대해서 한번 정리해 보기로 한다. 


원격 서버 설정

SSH로 접속하는 원격 서버에서 설정을 하면 접속하는 클라이언트에 동일하게 적용할 수 있다. 

원격 서버 설정은 SSH 데몬의 config 파일을 수정하면 된다. 


1. /etc/ssh/sshd_config 파일을 연다. 

# vi /etc/ssh/sshd_config


2. sshd_config 파일에 다음과 같이 추가한다. 

ClientAliveInterval 30

ClientAliveCountMax 5

ClientAliveInterval은 데이터가 수신되지 않으면 지정된 주기에 따라 데이터 전송하도록 클라이언트에 요청한다. 

여기에서는 30으로 되어 있으므로 30초마다 요청한다. 

만약 이 값이 0으로 되어 있으면 데이터 전송을 하지 않는다. 


무제한으로 요청하는 것은 문제가 있으므로 ClientAliveCountMax값을 통해 최대 요청 횟수를 지정하기도 한다. 

그러므로 작업을 안하고 있으면 최대 150초(30초 X 5회)까지는  연결이 유지된다. 


3. 파일을 저장하고 SSH 데몬을 재시작한다. 

# /etc/init.d/ssh restart

또는

# service sshd restart

하지만 원격 서버 설정은 보안상의 이슈가 더 커질 수 있기 때문에 다음 로컬 설정을 활용하는 것이 좋을 듯 하다. 


로컬 서버 설정

로컬 서버에서 설정도 비슷한 방식으로 수행한다. 

로컬의 모든 사용자가 사용하려면 /etc/ssh/ssh_config을 편집하고, 

현재 사용자만 할 경우 ~/.ssh/config 파일을 편집한다. 


# vi ~/.ssh/config

ServerAliveInterval 15

ServerAliveCountMax 3


원격 서버와 마찬가지로 데이터 전송 주기와 회수를 지정해서 연결을 유지한다. 

위 예제는 15초 마다 최대 3번까지 서버로 데이터를 전송하게 된다. 


TMOUT 설정

SSH 설정을 해놓더라도 비활성화되었을 때 자동으로 로그아웃이 될 수도 있다. 

이것은 원격 서버에 Time out 설정이 되어 있기 때문이다.  


# vi ~/.bashrc

export TMOUT=120

....


위와 같이 설정되어 있으면 TMOUT 부분을 삭제하거나 0으로 변경하면 된다. 


윈도우 Putty 설정

윈도우 환경에서 Putty를 사용할 경우 [PuTTY Configuration] - [Connection]에서 설정 가능하다.


 





Trackback 0 And Comment 0

MySQL 세팅 정보 확인 명령어

|



MySQL의 설정이 어떻게 되어 있는지 확인하는 명령어를 간단하게 한번 정리합니다. 
가끔 언어 설정이나 버전 등의 정보가 궁금한 경우가 있더라구요.

MySQL 상태 확인

mysql> status
--------------
/usr/local/mysql/bin/mysql  Ver 14.14 Distrib 5.1.45, for apple-darwin10.2.0 (i386) using readline 5.1

Connection id:          34
Current database:       campus114
Current user:           root@MINI
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.5.14 MySQL Community Server (GPL)
Protocol version:       10
Connection:             192.168.0.140 via TCP/IP
Server characterset:    latin1
Db     characterset:    utf8
Client characterset:    latin1
Conn.  characterset:    latin1
TCP port:               3306
Uptime:                 8 hours 59 min 21 sec

Threads: 25  Questions: 1139  Slow queries: 0  Opens: 325  Flush tables: 1  Open tables: 7  Queries per second avg: 0.35
--------------

MySQL 버전 확인

status로도 버전을 확인할 수 있지만 버전만 별도로 확인하는 내용입니다. 

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.14    |
+-----------+
1 row in set (0.07 sec)

MySQL 언어 설정 확인

마찬가지로 status에도 Db characterset으로 언어 설정을 확인할 수 있지만 보다 자세히 확인하는 방법입니다. 
Show Variables 를 활용해서 c로 시작하는 내용만 살펴봅니다. 

mysql> show variables like 'c%';
+--------------------------+-----------------------------------------------------+
| Variable_name            | Value                                               |
+--------------------------+-----------------------------------------------------+
| character_set_client     | latin1                                              |
| character_set_connection | latin1                                              |
| character_set_database   | latin1                                              |
| character_set_filesystem | binary                                              |
| character_set_results    | latin1                                              |
| character_set_server     | latin1                                              |
| character_set_system     | utf8                                                |
| character_sets_dir       | /usr/local/mysql-5.1.45-osx10.6-x86/share/charsets/ |
| collation_connection     | latin1_swedish_ci                                   |
| collation_database       | latin1_swedish_ci                                   |
| collation_server         | latin1_swedish_ci                                   |
| completion_type          | 0                                                   |
| concurrent_insert        | 1                                                   |
| connect_timeout          | 10                                                  |
+--------------------------+-----------------------------------------------------+
14 rows in set (0.00 sec)

이외에도 show variables를 통해 보다 상세한 정보들을 확인할 수 있습니다.
또한 show processlist를 살펴보면 process 정보도 알 수 있네요.. ^^ 
 
 



Trackback 0 And Comment 0
prev | 1 | next