Ubuntu 서버에서 mpm_prefork로 Apache 2.4를 구성했습니다.
htop
CPU를 많이 사용하는 프로세스가 있다는 것을 알게 되었습니다 .
내 사이트에서 이 Apache 프로세스가 실행 중인 URL/php 스크립트가 정확히 무엇인지 어떻게 알 수 있나요? 예:
PID | CPU | 시간 | 사용자 | 명령 | 스크립트(내가 가지고 있지 않은 정보) |
---|---|---|---|---|---|
123 | 80% | 0:01:30 | www-데이터 | /usr/bin/apache2 -k 시작 | /사이트 폴더/index.php/controller/function_abc |
123 | 5% | 0:02:30 | www-데이터 | /usr/bin/apache2 -k 시작 | /site-folder/index.php/controller_2/function_123 |
mod_status
다음으로 활성화할 수 없습니다 .CIS이 모듈의 사용을 권장하지 않습니다.
답변1
mod_status를 활성화하지 않는 것이 좋습니다. mod_status를 사용 가능하게 하면 서버 전체에서 사용할 수 있다는 사실에 근거합니다.
그런 다음 .htaccess
파일도 허용하면(기본값 또는 대부분의 Apache httpd 배포) .htaccess
파일을 편집/생성할 수 있는 모든 사용자가 상태 URL을 활성화할 수 있습니다. 파일 에서 활성화/구성할 수 있는 대부분의 지시문과 달리 .htaccess
상태 URL의 범위는 .htaccess 파일이 있는 디렉터리 경로로 제한되지 않고 전체 서버와 거기에서 호스팅되는 모든 사이트의 상태를 노출합니다. 이는 공유 서버에서 심각한 보안 위험/정보 유출이 될 수 있습니다.
해당 보안 위험이 존재할 필요는 없습니다.
파일 에 의존하지 않고 여러 다른 웹마스터가 서버를 사용하지 않는 경우 .htaccess
서버 관리자는 모든 지시문을 정적 구성 httpd.conf
(및/또는 사이트 활성화 및/또는 conf.d 등에서 포함되는 스니펫) 으로 로드할 수 있습니다. .
그런 다음 모두 비활성화합니다 .htaccess
( 설정을 통해 AllowOverride none
). 그것도성능 향상그런데.
그러면 관리자만이 상태 URL을 활성화할 수 있으며 해당 URL에 적절한 액세스 제어가 설정되면 mod_status를 사용해도 위험이 없습니다.