웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
Apache 서버운영에 쓸모있는 팁 몇가지
2004.05.21 13:38
http://pclab.cataegu.ac.kr/Server.html저의 졸작인 [초보자를 위한 Windows용 Apache2 + PHP + MySQL 설치] 강좌가 엄청난 조회수를 기록하고 있네요.
그림이 너무 많아서 내용은 이곳에 직접 올리지 못하고 제 홈페이지를 링크시켰는데 벌써 많은 분이 제 홈페이지를 다녀가셨습니다.
별로 대단한 지식도 아닌데, 많은 관심에 감사드립니다.
이번에는 그림이 없어서 이곳에도 직접 올립니다.
열화같은 요청(?)에도 불구하고 예고편만 나간채, 마지막 강좌가 언제 끝나는지 궁금하셨을겁니다.
벌써 게시판에 들어온 질문도 있고해서, 서버설치에 성공하신 분들을 대상으로 관리에 필요한 몇가지 노하우를 알려드리고자 팁을 소개합니다.
설치 후 어느정도 지나야지 아래에 제시한 예들을 실감하게되고, 이해도 빠르리라 생각해서 뜸을 들인겁니다..라는 말은 작은 핑계고, 다른 일에 매달리느라 바빠서 못 올려드린점 다시 한번 사과드립니다.
이하 내용은 절대적인건 아니고 단지 제가 사용하고 있는 팁임을 먼저 알려드립니다.
1. Apache에서 폴더 설정에 대한 팁
게시판에 올라온 질문과 답을 먼저 소개합니다.
문> root directory를 열심히 바꾸어서 제 웹 관련 폴더로 연결시키려고 (예: conf 파일을 수정해서 c:apache2/htdoc---> c:myweb) 해봤는데 계속 실패 (restart불가능) 하네요. 그래서 제 폴더의 파일들을 걍 apache2 폴더로 다 넣어버렸습니다. 그러니 되더군요. 다른 방법이 있나요?
답> Apache Root Directory를 바꾸려면 httpd.conf 파일을 일부 수정해야합니다.
원본은 아마도 아래와 비슷할겁니다.
---------------------------------------------------------------------
DocumentRoot "C:/Apache2/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory "C:/Apache2/htdocs">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
---------------------------------------------------------------------
위에서 "C:/Apache2/htdocs"부분을 원하는 폴더로 바꾸어주면됩니다.
이 질문은 난이도는 높지 않지만 Apache 설치 후 꼭 한 번 거치게 되는 필수질문이 되지 싶군요.
왜냐하면, 위의 경우 뿐만 아니라 서버에 필요한 파일이나 홈페이지용 HTML 문서는 서버가 설치된 드라이브나 폴더에 저장해도 용량이 별로 커지지 않지만, 자료실등을 이용해서 자료가 많아지면 별도의 드라이브나 폴더에 자료를 저장해야 관리가 쉬워집니다. 이런 방법이 없다면 서버용 드라이브나 폴더는 조만간 용량이 한계에 도달하게 됩니다. 물론 이때마다 큰 용량의 하드디스크로 바꾸고 재설치해주면 되겠지만 이게 보통일이 아니겠죠?
서버용 드라이브에는 문서만 저장하고 자료실같은 큰 파일의 자료는 다른 드라이브에 저장하고 링크만 시켜주는 방법을 활용하면 용량의 한계는 겪지 않게되고 서버의 백업도 쉬워집니다. 실제로 제가 운영하고 있는 서버는 서버용으로 쓰고있는 드라이브의 총용량이 9기가짜리인데, 아직 1기가도 채 되지않는군요. 물론 자료실용 하드는 약 300기가를 쓰고 있습니다. 현재 300가가나되는 하드디스크는 시중에 없습니다.
소개말이 길었는데, 자 이제 방법을 소개합니다.
제 httpd.conf 파일에는 아래와 같은 내용이 추가되어 있습니다.
-------------------------------------------------------------------------------------
# 내가 추가한 Directory List ####
Alias /Music "G:/Music"
<Directory "G:/Music">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /File "G:/File"
<Directory "G:/File">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
--------------------------------------
줄 맨 앞에 # 기호를 붙이면 설명문(주석)이 됩니다. 설명만하고 실행은 되지 않는다는 말입니다. 프로그램 짜보신분들은 잘 아시는 얘기지만..
Alias는 별명 쯤이라고 보면 좋겠네요. Directory Aliasing이라고 해서 다른 폴더나 드라이브의 내용을 간단히 줄여서 링크시키는 개념이라고 생각하시면 됩니다.
저렇게 설정하면 htdocs 폴더아래에 있지않고 실제로는 G 드라이브의 Music이라는 폴더에 있는데도 htdocs 폴더아래에 Music이라는 폴더가 있는것처럼 사용할 수 있습니다.
필요로하는 내용은 위의 내용처럼 계속 추가할 수 있습니다.
위와같이 설정하고 예를들어 http://myhomepage.net/Music 이라고 주소를 치면 실제로는 G 드라이브의 Music 폴더를 연결시켜줍니다.
자 이제 Options 뒤에 붙는 설정을 하나씩 살펴보겠습니다. 이것도 여러모로 활용할 수 있습니다.
None: 옵션을 사용하지 않습니다.
All: 모든 옵션을 사용합니다.
Indexes: 해당 폴더에 Index 파일(Apache에서 설정한 Index.htm이나 index.php 같은 시작 파일)이 없으면 파일 목록을 보여줍니다. 이게 없으면 자료목록을 보여주지 않기때문에 보안에 유리합니다.
FollowSymLinks: 심볼링크로 이동할 수 있게합니다.
Apache에서 기본 설정된 디렉토리(폴더) 설정들을 보면 이해가 쉬울겁니다.
2. 내 컴퓨터에서는 접속이되는데 외부에서는 접속이 안되는경우
이것도 게시판에 올라왔던 질문인데, 이런 경우를 접하고 보니 참 황당하더군요. 사용자 환경이 다 다르다보니 별스런 경우도 있구나하고 생각했지요.
올챙이적을 생각해서 되짚어보면... 두가지 경우로 생각할 수 있는데, 하나는 서버컴퓨터가 인터넷에 접속이 되어있지않고 단지 내부에서만 테스트한 경우(localhost 또는 127.0.0.1 로만 테스트)인데 이런 경우는 논외로 하겠습니다. ^_^
두번째는 일부 인터넷 제공회사에서 서버사용에 의한 부하를 막기위해 특정 Port(인터넷 사용 통신 통로)를 막아 놓은 경우입니다. 주로 사용하는 HTTP(Web 서비스용; 80번)나 FTP(자료교환용; 21번)를 제한합니다. Apache는 Web 서비스용이므로 기본적으로 80번을 사용하도록 지정됩니다.
이런 경우에는 Apache에서 기본 Port를 변경해주어야합니다.
Apache의 httpd.conf 파일 중 Listen 80부분의 80을 다른 번호로 바꾸어보세요.
80번은 기본적으로 인정하기때문에 별도로 입력하지 않아도 자동으로 인식됩니다만, 이렇게되면 번거롭지만 외부접속시 이 Port번호도 아래와 같이 입력해야됩니다 (8080번일 경우).
http://pclab.cataegu.ac.kr:8080
FTP는 FTP 서버 설정시 Port 번호를 바꾸어주어야 되겠지요.
3. Apache log 파일 관리
앞에서 설치한 Apache는 잘 돌아가고 있는지요?
Apache 폴더 아래에 보면 logs라는 폴더가 있습니다.(C:Apache2logs)
여기에 access.log라는 파일이 있는데, 이게 날이 지날수록 크기가 점점 더 커질 수 밖에 없습니다.
아무래도 크기가 커지면 속도가 느려지겠지요?
여러가지 해결 방법들이 있는데, 제가 사용하는 방법을 소개합니다.
하루가 지나면 새로운 파일로 저장하도록 하는 방법입니다.
아무런 설정을 바꾸지 않았다면
httpd.conf파일에
CustomLog logs/access.log common
이라는 줄이 있습니다.
이줄을 아래와 같이 바꾸면 됩니다.
CustomLog "|c:/Apache2/bin/cronolog.exe c:/apache2/logs/access_log.%Y%m%d" combined
원래줄은 지우던지 아니면 주석처리 (줄 맨 앞에 # 기호를 붙이면 됩니다) 해주면 되겠지요.
눈치빠른 분들은 이미 아셨겠지만..
cronolog라는 파일이 bin이라는 폴더에 있어야됩니다. 없다면 아래 링크된 자료실에서 받으시면 됩니다.
파일 [받기]
그리고 당연히 Apache를 다시 기동해주면 적용이됩니다.
위에 적어 준 옵션대로라면 access_log.20040521 같이 확장자가 날짜로 됩니다. 길이가 너무길다면 %Y를 없애도 되겠네요.
그러면 access_log.0521 처럼 될겁니다.
일주일에 한번쯤 log 파일을 확인하고 불필요하면 지우면되겠네요.
성질급하신 분들은 시스템 날짜를 변경해서 테스트 해보시려고 할텐데....^_^
여기저기 줏어들은 잡다한 정보라 도움이 되실런지..
그림이 너무 많아서 내용은 이곳에 직접 올리지 못하고 제 홈페이지를 링크시켰는데 벌써 많은 분이 제 홈페이지를 다녀가셨습니다.
별로 대단한 지식도 아닌데, 많은 관심에 감사드립니다.
이번에는 그림이 없어서 이곳에도 직접 올립니다.
열화같은 요청(?)에도 불구하고 예고편만 나간채, 마지막 강좌가 언제 끝나는지 궁금하셨을겁니다.
벌써 게시판에 들어온 질문도 있고해서, 서버설치에 성공하신 분들을 대상으로 관리에 필요한 몇가지 노하우를 알려드리고자 팁을 소개합니다.
설치 후 어느정도 지나야지 아래에 제시한 예들을 실감하게되고, 이해도 빠르리라 생각해서 뜸을 들인겁니다..라는 말은 작은 핑계고, 다른 일에 매달리느라 바빠서 못 올려드린점 다시 한번 사과드립니다.
이하 내용은 절대적인건 아니고 단지 제가 사용하고 있는 팁임을 먼저 알려드립니다.
1. Apache에서 폴더 설정에 대한 팁
게시판에 올라온 질문과 답을 먼저 소개합니다.
문> root directory를 열심히 바꾸어서 제 웹 관련 폴더로 연결시키려고 (예: conf 파일을 수정해서 c:apache2/htdoc---> c:myweb) 해봤는데 계속 실패 (restart불가능) 하네요. 그래서 제 폴더의 파일들을 걍 apache2 폴더로 다 넣어버렸습니다. 그러니 되더군요. 다른 방법이 있나요?
답> Apache Root Directory를 바꾸려면 httpd.conf 파일을 일부 수정해야합니다.
원본은 아마도 아래와 비슷할겁니다.
---------------------------------------------------------------------
DocumentRoot "C:/Apache2/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory "C:/Apache2/htdocs">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
---------------------------------------------------------------------
위에서 "C:/Apache2/htdocs"부분을 원하는 폴더로 바꾸어주면됩니다.
이 질문은 난이도는 높지 않지만 Apache 설치 후 꼭 한 번 거치게 되는 필수질문이 되지 싶군요.
왜냐하면, 위의 경우 뿐만 아니라 서버에 필요한 파일이나 홈페이지용 HTML 문서는 서버가 설치된 드라이브나 폴더에 저장해도 용량이 별로 커지지 않지만, 자료실등을 이용해서 자료가 많아지면 별도의 드라이브나 폴더에 자료를 저장해야 관리가 쉬워집니다. 이런 방법이 없다면 서버용 드라이브나 폴더는 조만간 용량이 한계에 도달하게 됩니다. 물론 이때마다 큰 용량의 하드디스크로 바꾸고 재설치해주면 되겠지만 이게 보통일이 아니겠죠?
서버용 드라이브에는 문서만 저장하고 자료실같은 큰 파일의 자료는 다른 드라이브에 저장하고 링크만 시켜주는 방법을 활용하면 용량의 한계는 겪지 않게되고 서버의 백업도 쉬워집니다. 실제로 제가 운영하고 있는 서버는 서버용으로 쓰고있는 드라이브의 총용량이 9기가짜리인데, 아직 1기가도 채 되지않는군요. 물론 자료실용 하드는 약 300기가를 쓰고 있습니다. 현재 300가가나되는 하드디스크는 시중에 없습니다.
소개말이 길었는데, 자 이제 방법을 소개합니다.
제 httpd.conf 파일에는 아래와 같은 내용이 추가되어 있습니다.
-------------------------------------------------------------------------------------
# 내가 추가한 Directory List ####
Alias /Music "G:/Music"
<Directory "G:/Music">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /File "G:/File"
<Directory "G:/File">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
--------------------------------------
줄 맨 앞에 # 기호를 붙이면 설명문(주석)이 됩니다. 설명만하고 실행은 되지 않는다는 말입니다. 프로그램 짜보신분들은 잘 아시는 얘기지만..
Alias는 별명 쯤이라고 보면 좋겠네요. Directory Aliasing이라고 해서 다른 폴더나 드라이브의 내용을 간단히 줄여서 링크시키는 개념이라고 생각하시면 됩니다.
저렇게 설정하면 htdocs 폴더아래에 있지않고 실제로는 G 드라이브의 Music이라는 폴더에 있는데도 htdocs 폴더아래에 Music이라는 폴더가 있는것처럼 사용할 수 있습니다.
필요로하는 내용은 위의 내용처럼 계속 추가할 수 있습니다.
위와같이 설정하고 예를들어 http://myhomepage.net/Music 이라고 주소를 치면 실제로는 G 드라이브의 Music 폴더를 연결시켜줍니다.
자 이제 Options 뒤에 붙는 설정을 하나씩 살펴보겠습니다. 이것도 여러모로 활용할 수 있습니다.
None: 옵션을 사용하지 않습니다.
All: 모든 옵션을 사용합니다.
Indexes: 해당 폴더에 Index 파일(Apache에서 설정한 Index.htm이나 index.php 같은 시작 파일)이 없으면 파일 목록을 보여줍니다. 이게 없으면 자료목록을 보여주지 않기때문에 보안에 유리합니다.
FollowSymLinks: 심볼링크로 이동할 수 있게합니다.
Apache에서 기본 설정된 디렉토리(폴더) 설정들을 보면 이해가 쉬울겁니다.
2. 내 컴퓨터에서는 접속이되는데 외부에서는 접속이 안되는경우
이것도 게시판에 올라왔던 질문인데, 이런 경우를 접하고 보니 참 황당하더군요. 사용자 환경이 다 다르다보니 별스런 경우도 있구나하고 생각했지요.
올챙이적을 생각해서 되짚어보면... 두가지 경우로 생각할 수 있는데, 하나는 서버컴퓨터가 인터넷에 접속이 되어있지않고 단지 내부에서만 테스트한 경우(localhost 또는 127.0.0.1 로만 테스트)인데 이런 경우는 논외로 하겠습니다. ^_^
두번째는 일부 인터넷 제공회사에서 서버사용에 의한 부하를 막기위해 특정 Port(인터넷 사용 통신 통로)를 막아 놓은 경우입니다. 주로 사용하는 HTTP(Web 서비스용; 80번)나 FTP(자료교환용; 21번)를 제한합니다. Apache는 Web 서비스용이므로 기본적으로 80번을 사용하도록 지정됩니다.
이런 경우에는 Apache에서 기본 Port를 변경해주어야합니다.
Apache의 httpd.conf 파일 중 Listen 80부분의 80을 다른 번호로 바꾸어보세요.
80번은 기본적으로 인정하기때문에 별도로 입력하지 않아도 자동으로 인식됩니다만, 이렇게되면 번거롭지만 외부접속시 이 Port번호도 아래와 같이 입력해야됩니다 (8080번일 경우).
http://pclab.cataegu.ac.kr:8080
FTP는 FTP 서버 설정시 Port 번호를 바꾸어주어야 되겠지요.
3. Apache log 파일 관리
앞에서 설치한 Apache는 잘 돌아가고 있는지요?
Apache 폴더 아래에 보면 logs라는 폴더가 있습니다.(C:Apache2logs)
여기에 access.log라는 파일이 있는데, 이게 날이 지날수록 크기가 점점 더 커질 수 밖에 없습니다.
아무래도 크기가 커지면 속도가 느려지겠지요?
여러가지 해결 방법들이 있는데, 제가 사용하는 방법을 소개합니다.
하루가 지나면 새로운 파일로 저장하도록 하는 방법입니다.
아무런 설정을 바꾸지 않았다면
httpd.conf파일에
CustomLog logs/access.log common
이라는 줄이 있습니다.
이줄을 아래와 같이 바꾸면 됩니다.
CustomLog "|c:/Apache2/bin/cronolog.exe c:/apache2/logs/access_log.%Y%m%d" combined
원래줄은 지우던지 아니면 주석처리 (줄 맨 앞에 # 기호를 붙이면 됩니다) 해주면 되겠지요.
눈치빠른 분들은 이미 아셨겠지만..
cronolog라는 파일이 bin이라는 폴더에 있어야됩니다. 없다면 아래 링크된 자료실에서 받으시면 됩니다.
파일 [받기]
그리고 당연히 Apache를 다시 기동해주면 적용이됩니다.
위에 적어 준 옵션대로라면 access_log.20040521 같이 확장자가 날짜로 됩니다. 길이가 너무길다면 %Y를 없애도 되겠네요.
그러면 access_log.0521 처럼 될겁니다.
일주일에 한번쯤 log 파일을 확인하고 불필요하면 지우면되겠네요.
성질급하신 분들은 시스템 날짜를 변경해서 테스트 해보시려고 할텐데....^_^
여기저기 줏어들은 잡다한 정보라 도움이 되실런지..
제목 | 글쓴이 | 날짜 |
---|---|---|
IIS 6.0과 PHP 4.3.7 연동 [8] | u2em | 2004.07.06 |
IIS에서 아웃로그인,최근게시물이 htm,html 에선 안돼고 php에서만 될때 해결방법 [4] | kyjzz | 2004.07.01 |
왕초보를 위한 APM설치기...^^; [2] | 웰치스 | 2004.06.29 |
Red Hat Linux 의 복구 모드 간단한 사용법 [2] | u2em | 2004.06.28 |
웹호스팅 사용자를 위한 계정관리 스크립트 [5] | 알지로넷 | 2004.06.25 |
[펌]유동아이피->고정아이피(포워딩 아님!!) [12] | Plus가좋다 | 2004.06.08 |
IIS6.0+PHP4.3.3+MySql4.0.18+제로보드4.1 pl4 [10] | 류진곤 | 2004.06.08 |
Apache 서비스를 위한 NT 보안 설정 [2] | 토토루 | 2004.05.24 |
Apache 서버운영에 쓸모있는 팁 몇가지 [2] | PCLab | 2004.05.21 |
FTP서버설치 (filezilla server) [6] | 이주성 | 2004.05.20 |
[경보]Serv-U 4.0 이전 버전 크래킹 툴 발견 [4] | u2em | 2004.04.26 |
개인서버로 메일 서버 및 기타 서버를 운영할 때 메일 및 서비스 절대 못 하게 하기...(xp이상) [3] | 그냥이렇게。 | 2004.04.20 |
Apache 보안 [4] | u2em | 2004.04.05 |
초보자를 위한 Windows용 Apache2 + PHP + MySQL 설치 [7] | PCLab | 2004.03.29 |
경량화 리눅스 'Linux Annyung' [5] | u2em | 2004.03.27 |
Apache 자체 Log 관리 | 87K300 | 2004.03.20 |
-초보의 초보대상 강좌-커널 패치하기... [2] | 87K300 | 2004.03.19 |
xampp 1.3 설치해 보기(winxp) [3] | 이주성 | 2004.03.03 |
apache,php,mysql,zendoptimizer,phpmyadmin 다운 받기 [5] | 이성헌 | 2004.02.28 |
Serv-U의 보안 설정 [1] | 87K300 | 2004.02.24 |
apm_setup
Apache/1.3.31 PHP/4.3.9 포토8080번을 사용하고 있습니다.
그런데
제가 웹주소로 제 홈을 볼려고하면 "페이지를 찾을 수 없습니다" 가 나옵니다.
메인도그렇고 하위페이지도 모두가 그렇습니다.
다른 분들은 자기 컴으로 제홈이 잘 보입니다.
그래서 메인페이지가 어떻게 생겼는지도 모릅니다.
모든 수정이나 자료올리는거나 확인은 제로보드 관리자 페이지로 들어가서 합니다.
혹시 문제점을 알고 계신다면 전화좀 주시면 안될까요..(그럼 바로 제가 전화 드리겠습니다.)