리눅스 httpd.conf: Difference between revisions

From IT Wiki
(새 문서: 리눅스 아파치 웹서버의 메인 설정파일 *위치 : /etc/conf/httpd/httpd.conf == 설정법 == === 접근 제어 === <pre class='shell'> <Directory...)
 
No edit summary
 
(11 intermediate revisions by 6 users not shown)
Line 4: Line 4:


== 설정법 ==  
== 설정법 ==  
=== 기본 설정 ===
<pre class='shell'>
Listen 1120
ServerName webadmin.example.com:1120
DocumentRoot "/var/www/html/webadmin"
ServerAdmin [email protected]
DirectoryIndex index.php index.html index.htm
</pre>
* Listen : 사용할 포트를 지정한다.
* ServerName : 서버의 도메인을 입력한다.
* DocumentRoot : 웹 문서가 위치하는 디렉터리를 지정한다.
** ServerRoot "/var/www/html", DocumentRoot "/webadmin" 으로 나눌 수도 있다.
* ServerAdmin : 서버 관리자 이메일을 입력한다.
* DirectoryIndex : 클라이언트가 디렉토리를 요청할때 먼저 읽히는 파일들을 지정한다.
=== 접근 제어 ===
=== 접근 제어 ===
<pre class='shell'>
<pre class='shell'>
Line 12: Line 27:
</Directory>
</Directory>
</pre>
</pre>
* Order : Deny와 Allow의 순서를 정한다.(Allow - Deny 순서) 블랙리스트 방식
** Allow,Deny 또는 Deny,Allow 둘중에 하나를 적는다.
** 최종적으로 읽히는 정책이 동작한다.
* 위 예제의 경우 기본적으로 다 막고, 192.168.2 대역만 오픈한다.


=== 접속 유지 ===
<pre class='shell'>
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 100
</pre>
* [[HTTP]]는 기본적으로 Stateless 프로토콜로, 페이지를 로드할때마다 새로 접속을 수립
* KeepAlive는 이러한 특성 때문에 발생하는 부하와 속도 저하를 줄이고자 일정 시간동안 접속 유지
* KeepAlive를 사용하면 더 빠르지만, 동시 접속량은 줄어들 수 있다.
* KeepAliveTimeout은 언제까지 접속을 유지할지(초단위),
* MaxKeepAliveRequests는 클라이언트와 서버 프로세스 간에 연결을 지속시키는 동안에 허용할 최대 요청 건수를 지(해당 요청 건수를 초과하면 연결을 종료)
=== 기타 ===
* LimitRequestBody: 전송 가능한 최대 사이즈를 제한한다.
== 적용 ==
apache 데몬(httpd)를 재시작 해주어야 한다.
<pre>
$ sudo service httpd restart
// 또는
$ sudo apachectl restart
</pre>
* 다운타임 및 세션 유실을 방지하기 위한 재기동
* 단, 모듈 추가 등 일부 작업은 적용 불가(재시작 필요)
<pre>
$ sudo httpd -k graceful
</pre>




[[분류:리눅스]]
[[분류:리눅스]]
[[분류:리눅스 파일]]
[[분류:리눅스 파일]]

Latest revision as of 20:29, 7 February 2021

리눅스 아파치 웹서버의 메인 설정파일

  • 위치 : /etc/conf/httpd/httpd.conf

설정법[edit | edit source]

기본 설정[edit | edit source]

Listen 1120
ServerName webadmin.example.com:1120
DocumentRoot "/var/www/html/webadmin"
ServerAdmin [email protected]
DirectoryIndex index.php index.html index.htm
  • Listen : 사용할 포트를 지정한다.
  • ServerName : 서버의 도메인을 입력한다.
  • DocumentRoot : 웹 문서가 위치하는 디렉터리를 지정한다.
    • ServerRoot "/var/www/html", DocumentRoot "/webadmin" 으로 나눌 수도 있다.
  • ServerAdmin : 서버 관리자 이메일을 입력한다.
  • DirectoryIndex : 클라이언트가 디렉토리를 요청할때 먼저 읽히는 파일들을 지정한다.

접근 제어[edit | edit source]

<Directory "/www/ihd/admin">
  Order Deny,Allow
  Deny from All
  Allow from 192.168.2.0/24
</Directory>
  • Order : Deny와 Allow의 순서를 정한다.(Allow - Deny 순서) 블랙리스트 방식
    • Allow,Deny 또는 Deny,Allow 둘중에 하나를 적는다.
    • 최종적으로 읽히는 정책이 동작한다.
  • 위 예제의 경우 기본적으로 다 막고, 192.168.2 대역만 오픈한다.

접속 유지[edit | edit source]

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 100
  • HTTP는 기본적으로 Stateless 프로토콜로, 페이지를 로드할때마다 새로 접속을 수립
  • KeepAlive는 이러한 특성 때문에 발생하는 부하와 속도 저하를 줄이고자 일정 시간동안 접속 유지
  • KeepAlive를 사용하면 더 빠르지만, 동시 접속량은 줄어들 수 있다.
  • KeepAliveTimeout은 언제까지 접속을 유지할지(초단위),
  • MaxKeepAliveRequests는 클라이언트와 서버 프로세스 간에 연결을 지속시키는 동안에 허용할 최대 요청 건수를 지(해당 요청 건수를 초과하면 연결을 종료)

기타[edit | edit source]

  • LimitRequestBody: 전송 가능한 최대 사이즈를 제한한다.

적용[edit | edit source]

apache 데몬(httpd)를 재시작 해주어야 한다.

$ sudo service httpd restart
// 또는
$ sudo apachectl restart
  • 다운타임 및 세션 유실을 방지하기 위한 재기동
  • 단, 모듈 추가 등 일부 작업은 적용 불가(재시작 필요)
$ sudo httpd -k graceful