WEB
[apache]1초간격 80포트로 접속한 사용자 확인
1초간격 80포트로 접속한 사용자 확인 watch --interval=1 "netstat -nat 2>/dev/null | grep 80 | grep ESTABLISHED | wc -l "
[apache] ThreadsPerChild (스레드 )개수 확인 스크립트
while true; do echo "-->"; date; for pid in `ps -ef | grep httpd | grep -v grep | grep -v rotate | awk {'print $2'}`; do echo "$pid : `ps -p $pid -T | wc -l`"; done; sleep 1; done ThreadsPerChild 개수확인
Apache Worker 튜닝 및 부하 테스트
ServerLimit 2 # 구성가능한 child 프로세스의 재한 수 StartServers 2 # 시작시에 초기화되는 서버 프로세스의 개수 (default : 3) / prefork default:5, MaxClients 128 # 동시에 접속할 수 있는 Client의 상한, 즉 Precess 수 x Thread 수 MinSpareThreads 7 #새로운 방문자를 바로 처리하기 위하여 대기하고 있는 최소 쓰레드 개수 MaxSpareThreads 10 #새로운 방문자를 바로 처리하기 위하여 대기하고 있는 최대 쓰레드 개수(보통 ThreadsPerChild 값이랑 같게 설정) ThreadsPerChild 64 # 프로세스당 쓰레드 수(ThreadLimit와 거의 같은 의미) MaxRequestsPerCh..
[nginx] centos nginx 컴파일 설치
최신 패키지 다운로드하기 yum -y update yum -y install wget vim yum -y install make openssl gcc gcc-c++ nginx 소스관리를위해 디렉토리생성 cd /opt mkdir nginx_source-1.20.1 cd nginx_source 컴파일에 필요한 라이브러리 다운 wget https://zlib.net/zlib-1.2.13.tar.gz tar zxf zlib-1.2.13.tar.gz wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz tar zxf openssl-1.1.1l.tar.gz wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pc..
[nginx] root 가 아닌 다른 계정으로 기동하기 권한 부여
1024 이하 포트경우 root계정의 권한을 부여하여 사용이가능하다. nginx: the configuration file /opt/nginx-1.20.1/conf/nginx.conf syntax is ok nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied) nginx: configuration file /opt/nginx-1.20.1/conf/nginx.conf test failed
[apache] /favicon.ico HTTP/1.1" 404 에러 없애기.
favicon.ico 은 URL 옆에 표시되는 icon 을 의미하며 필자는 단순테스트용도로 해당 부분이 불필요함. 크롬 관리자 도구나 Apache web서버로그에 GET /favicon.ico HTTP/1.1" 404 부분을 간혹 볼수있다. #httpd.conf 파일 해당구문 추가. Redirect 404 /favicon.ico ErrorDocument 404 "No favicon" 해당구문 추가하고 재기동하면 해당구문 사라짐.
Jkmount 로 WEB/WAS분리하는 이유
Apache (웹 서버) 는 static한 파일 (js, img, css) 등 변동이 없는 정적인 파일을 서비스하기 위해 사용. Wildfly , Tomcat (웹 어플리케이션 서버, 이하 WAS) 는 사용자의 요청 등에 따라 유동적인 서비스를 제공하기 위해 사용. WEB은 static 파일 서비스에 유리하고, WAS는 동적인 서비스를 제공하는데 유리함. 이럴경우 정적인 파일 등이 Web서버의 캐시기능 사용를 못하고 WAS에서 서비스할 경우 일반적인 서비스보다 많은 DISK I/O와 CPU부하를 받음.
Apache 에서 여러 개의 SSL 인증서 패스워드를 자동 입력
SSL 인증서 key 파일에 패스워드가 적용이되어있다. SSLPassPhraseDialog 기능으로 비밀번호 입력없이 실행되게 하기 위해서는 비밀번호를 파일로 생성후 파일을 읽어들여 구동되도록 변경한다. 인증서 도메인별& 인증서 패스워드 입력. #pass.sh #!/bin/sh case $1 in www.aaa.com:443) echo "123";; www.bbb.com:443) echo "456";; esac exit 0 httpd-ssl.conf 파일 위의 쉘스크립트 경로 지정 SSLPassPhraseDialog exec:/opt/apache/pass.sh