RedHat의 명령 행에서 아파치 모듈을 어떻게 활성화합니까?


29

RedHat의 명령 행에서 아파치 모듈을 어떻게 활성화합니까?

데비안 / 우분투 시스템에서는 a2enmod를 사용하여 명령 줄에서 모듈을 활성화합니다.

RedHat / CentOS 유형 시스템에 해당하는 것이 있습니까?

답변:


27

동등한 것은 없습니다.

데비안 / 우분투는 아파치 설정을 다수의 파일로 정돈하는데, 여기서 모드 및 사이트의 디렉토리는 설정 파일의 다른 스 니펫과 심볼릭 링크됩니다. a2enmod / a2ensite 스크립트는 이러한 심볼릭 링크를 조작합니다.

debian$ ls /etc/apache2/mods-enabled 
lrwxrwxrwx 1 root root 28 2009-03-12 18:02 alias.conf -> ../mods-available/alias.conf
lrwxrwxrwx 1 root root 28 2009-03-12 18:02 alias.load -> ../mods-available/alias.load
lrwxrwxrwx 1 root root 33 2009-03-12 18:02 auth_basic.load -> ../mods-available/auth_basic.load
lrwxrwxrwx 1 root root 33 2009-03-12 18:02 authn_file.load -> ../mods-available/authn_file.load
lrwxrwxrwx 1 root root 36 2009-03-12 18:02 authz_default.load -> ../mods-available/autoindex.load
lrwxrwxrwx 1 root root 26 2009-03-12 18:02 env.load -> ../mods-available/env.load
lrwxrwxrwx 1 root root 27 2009-03-12 18:02 mime.conf -> ../mods-available/mime.conf
lrwxrwxrwx 1 root root 27 2009-03-12 18:02 mime.load -> ../mods-available/mime.load
lrwxrwxrwx 1 root root 34 2009-03-12 18:02 negotiation.conf -> ../mods-available/negotiation.conf
lrwxrwxrwx 1 root root 34 2009-03-12 18:02 negotiation.load -> ../mods-available/negotiation.load
lrwxrwxrwx 1 root root 27 2009-06-16 21:47 php5.conf -> ../mods-available/php5.conf
lrwxrwxrwx 1 root root 27 2009-06-16 21:47 php5.load -> ../mods-available/php5.load

Redhat 시스템에서 아파치 구성은 기본적으로 하나의 파일 /etc/httpd/conf/httpd.conf에 보관됩니다. 모든 모듈은이 파일에서로드되며 적절한 LoadModule 문을 주석 처리하여 비활성화 할 수 있습니다.

...
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
...

RedHat / CentOS가하는 일은 꽤 아파치 설정을 제공하는 반면 데비안은 자체 "개선"을 추가하는 것입니다. 물론 데비안 분할 설정 시스템을 템플릿으로 사용하여 직접 만들고 스크립트를 복사 할 수도 있습니다. 그러나 데비안 설정의 주요 주장은 아파치 모듈 패키지가 자신의 설정 파일을 설치할 수 있으므로 유용성이 떨어집니다.


편집 : 이것을 스크립팅하는 동등한 방법을 찾고 있다면 /etc/httpd/conf.d 디렉토리를 사용하는 것이 좋습니다. 여기에있는 모든 구성 파일이 포함됩니다. 스크립트가 얼마나 복잡한 지에 따라 한 줄 파일을 conf.d에 직접 쓰거나 더 복잡한 비트에 심볼릭 링크를 사용하는 것이 좋습니다.


새 서버 빌드 스크립트에서 무엇을해야합니까? awk / sed craziness? 나만의 설정 파일을 작성하여 제자리에 복사합니까? 이러한 옵션 중 어느 것도 매력적으로 들리지 않습니다.
MarshallY

1
왜 모든 사람이 당신의 대답에 가혹한 지 잘 모르겠습니다. Red Hat-alikes에서 a2enmod 스크립트를 찾지 못하는 이유를 정확하게 설명합니다. 개인적으로, 나의 계획은 꼭두각시를 사용하여 RHEL 박스에서 유사한 레이아웃을 관리하는 것입니다.
Chad Huneycutt

1
@womble-데비안이 작은 파일을 너무 많이 가져 와서 아파치가 수신 해야하는 포트를 설정하기위한 전체 파일을 가지고 있다고 생각합니다. 심볼 링크를 만드는 쉘 스크립트도 너무 한 단계라고 생각합니다. 구성 파일이 실제로 어떻게 작동하는지 이해하지 못하는 사용자를 혼동하는 지점. 나는 그 쓴 것을 부르지 않을 것입니다.
theotherreceive

10 년 후, RHEL / CentOS 7에서 적어도 체크인해야합니다/etc/httpd/conf.modules.d
cdmo

3

일반적으로 Redhat 시스템에서는 다음과 같은 줄이 있습니다 /etc/httpd/conf/httpd.conf.

conf.d / *. conf 포함

당신이로 구성 파일을 복사 할 때 /etc/httpd/conf.d, 그리고 그것이이 .conf파일 확장자를, 다음은 집어 아파치 시작으로 처리됩니다. 일반적 으로이 폴더 에는 및와 같은 확장명 mod_phpmod_svn웹 서버와 통합 된 응용 프로그램에 대한 구성 파일 trac이 있습니다.

참고 사항 : OpenSuSE와 같이 RPM을 사용하는 다른 시스템 과 같은 mod_php또는 mod_auth_mysql다른 시스템의 아파치 모듈의 /etc/sysconfig/apache2경우 아파치가 새 모듈을 선택하기 위해 편집 해야하는 다른 구성 파일 (예 :)이있을 수 있습니다 . 이 중 일부는 사용중인 시스템 관리 도구 (예 : yast2)에 따라 다릅니다. 이 중 일부는 플 리스크 / 패널과 같이 설치할 수있는 애프터 마켓 제품에 의존합니다. 그러나 시작하기 가장 좋은 위치는 위의 폴더입니다.


Fedora 21 (및 다른 버전 또는 다른 RH 제품군 배포판)을 사용하는 모든 사용자를 위해 모듈 로딩이 /etc/httpd/conf.modules.d/라는 새 디렉토리로 이동되었습니다. 이 Include conf.modules.d/*.conf경우 httpd.conf에 다음 줄이 표시됩니다 .
Night Owl

1
yum list mod\*

원하는 모듈을 설치하십시오

예를 들어 mod_perl

rpm -ql mod_perl.x86_64 | grep /etc/

/etc/httpd/conf.d/perl.conf
/etc/httpd/conf.modules.d/02-perl.conf

/etc/httpd/conf.d/perl.conf사용하도록 수정

기본적으로 누군가를로드하지 않으려면 모든 모드가 설치 될 때로 드됩니다

파일 편집 /etc/httpd/conf.modules.d/02-perl.conf및 주석 해시 기호 ( #)가있는 행로드


이것은 질문에 대한 완벽한 답변입니다. '사용'은 'LoadModule'과 다릅니다.
Raghav Tallam

0

'활성화'모듈이 "LoadModules"및 설치와 다릅니다

  • 이미 설치되어 있고 오프라인 인 경우 루트 사용자는service enable httpd
  • 모듈과 해당 conf 파일을 사용할 수없는 경우 루트 사용자는yum install -y <mod_name>
  • 가용성을 확인하십시오 yum list mod\*
  • 이미 활성화되어 설치된 경우 다음과 같이 드래프트 httpd.conf 또는 * .conf 파일 을 사용하도록로드 하십시오.
    LoadModule ldap_module modules/mod_ldap.so

  • 올바르게로드하여 사용 준비가되었는지 확인하려면 apachectl -M

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.