Posts tagged ‘아파치’

Apache vs Nginx

아주 간단하게 그래프로 평가..

apache vs nginx

 

왼쪽이 apache 오른쪽이 nginx

apache가 시스템 성능을 다 쓰면서도 전송량이 들쑥날쑥한 현상이 발생.. 동시 접속이 많을 때 제대로 처리를 못하는 것을 발견.. 튜닝이다 뭐다 이것저것 할 시간이 없기도 하고 시간이 아깝기도해서 그냥 아예 Nginx로 갈아탐..

결과는 완전 만족!! 중단 없는 네트워크 그래프를 보면 상태가 어떠했는지 알 수 있을듯 🙂

Nginx(엔진X 라고 읽음) 만세~

apache 아파치 설정파일 httpd.conf 를 이용한 기본 보안

일단 아파치 설정 관련해서 몇개 적긴 했었는데..

2008/05/13 – [-ㅂ-] – Windows 에서 Apache+MySQL+PHP와 함께 WordPress를 사용할 때의 설정
2008/04/18 – [-ㅂ-] – Apache(아파치) 2.2 를 윈도에 설치 했을때 403 Forbidden 에러가 난다면

이런것들;;

위에선 적어놓지 않았던 내용중 하나를 추가

리눅스에서 설정을 하려면 방화벽 기본으로도 좋은 녀석 있으니 그걸 이용해서 설정하면 된다지만
그래도.. 그래도.. 처음부터 안전하게 해놓는 것이 역시 좋기에 🙂

현재 내가 사용하고 있는 설정 파일의 일부
——————————————————–
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
</Directory>
————————————————-

두꺼운 글씨 처리 되어있는 부분이 매우 간단하기에 편리하게 설정할 수 있는 부분..
MAC address로 처리하는 것이 물론 매우 좋긴 하지만 MAC의 경우 개인이 맘대로 변경 할 수도 있는 가능성도 있고 내부에서만 보여야 되는 설정일 경우 IP주소로 필터링을 한번 해주는 것이 일단 먼저이기 때문에 🙂

1. Order Deny,Allow
위처럼 Order Deny, Allow 를 하게되면 Deny 부터 하고 나중에 Allow를 한다는 이야기
반대로 쓸 수도 있음 Order Allow, Deny 로 하게되면 Allow먼저 처리하고 나중에 Deny를 처리함

2. Deny from all
위의 설정은 일단 모든 트래픽을 막음

3. Allow from 127.0.0.1
1번의 order deny, allow 의 조건에 따라서 이미 막혀있는 상태에서 127.0.0.1 만 접속을 허용하도록 설정함
127.0.0.1 은 localhost 이기에 자신의 컴퓨터를 제외한 다른 곳에서는 결국 접속이 불가능 한 상태로 설정됨

생각보다 매우 간단 🙂

이어지는 응용편
——————————————————–
1. 특정 IP만 막고 싶을때
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
Deny from 111.222.333.444
</Directory>

2. 1번 막았는데 한 녀석 더 막고 싶을때
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
Deny from xxx.xxx.xxx.xxx yyy.yyy.yyy.yyy
</Directory>

3. C클래스를 막고 싶을때
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
Deny from 111.222.333
</Directory>

4. 사무실 내부 C클래스만 열고 싶을때
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All
Order Deny, Allow
Allow from 192.168.1
Deny from all
</Directory>

위에서도 적은 것 처럼 allow 와 deny의 순서가 바뀌어 있어도 order에 명시된 순서로만 명령어가 먹음!

끗끗

Windows 에서 Apache+MySQL+PHP와 함께 WordPress를 사용할 때의 설정

windows기반에서 apache mysql php의 연동은 정말 넘치고 넘쳐있으니;; 죄송하지만 검색 한번 해보시면 나올듯 하고

글을 적는 이유인 windows 기반에서 wordpress를 연습 or 서비스 (설마;;) 할 때의 도움이 되는 설정 내용

 

apache+mysql+php 설치후 설정할 것들..

 

httpd.conf에 추가될 내용

1. LoadModule rewrite_module modules/mod_rewrite.so 에 있는 주석 제거

2. php 설정 – 이건 아마도 이미 apache와 php의 연동에서 처리가 되었을 부분
LoadModule php5_module “D:/PDS/php-5.2.5-Win32/php5apache2_2.dll”
AddType application/x-httpd-php .php
PHPIniDir “D:/PDS/php-5.2.5-Win32/”

3. 경로와 권한설정
<Directory “D:/document/wordpress”>
Options Indexes FollowSymLinks
AllowOverride All

Order allow,deny
Allow from all
</Directory>

예전에 적어놓았던 403에 대한 에러 역시 수정됨.. 중요한것은 mod_rewrite.so 이 부분과 AllowOverride 설정을 All 로 변경해주는 것..

 

위의 내용까지 처리가 되었다라면 permanent link부분까지 처리가 다 될듯
이거 제대로 처리 안되면 http://localhost/?p=번호 이런 식으로만 처리가 되고 (물론 보고 즐기는데는 상관없지만 이왕하는거 ㅋ) 나름 fancy한 링크인 permalinks가 먹질 않고 404 에러를 토해낼테니–;; 그게 보기 싫으면 위의 설정을 해주면 깔끔~

Apache(아파치) 2.2 를 윈도에 설치 했을때 403 Forbidden 에러가 난다면

보통의 경우 (물론 다른 훌륭한 http daemon들도 많지만) 리눅스에서 많이 쓰는 Apache 웹서버의 경우
윈도에서 제공되는 지금까지 GUI로 제공되어오던 IIS의 설정을 변경하는것 보다는 많은 노력이 들어가며

그중에서 가장 대표적인 예가 바로 접근 권한이 없다라고 나오는 403 Forbidden 에러메시지..
리눅스의 경우 디렉토리의 권한을 Apache 또는 모든유저가 읽을 수 있도록 변경하면
해결되는 경우가 보통이지만 윈도에서 (특히 XP계열의 end-user OS) 폴더 권한 설정하기에는
이런저런 압박들이 따라오는 경우가 많다 무슨 네트워크 보안 설정이니 웹에 게시를 할 것이냐부터
하다보면 ‘이거 뭐야 무서워 ㅠㅠ’ 하며 포기를 하게 되는 경우가 많은데
이러한 윈도계열에서 403에러를 한방에 날려줄 설정이 바로 이것!!




<Directory “경로(ex- d:/웹소스”>
AllowOverride None
Order allow,deny
Allow from all
</Directory>




위의 옵션을 아파치의 httpd.conf 파일에 추가를 해준 후 apache를 재기동시키면
많은 403 forbidden 에러메시지를 더이상 보지 않을 수 있다 🙂
IIS깔기 귀찮아서 Apache를 깔고나서 간만에 설정하다가 403에러를 만나서 기억을 더듬고 더듬은 끝에

구글이 알려줬다-_-;

고마워요 구글 -ㅅ-;;