Openlitespeed 웹서버 설치 및 Nginx 리버스 프록시 서버 설정하기 (2)

작업실

Openlitespeed 웹서버 설치 및 Nginx 리버스 프록시 서버 설정하기 (2)

우성군 6 186 1


1. 관리자 모드 접속 및 lsphp7.4 적용하기


(1)편의 마지막부터 다시 시작합니다. 스샷이 너무 없어서 스샷 좀 넣고 갈게요 ㅎㅎ


admin.자신의주소 로 들어가면



위와 같은 관리자 접속화면이 뜰겁니다.


유저네임에는 admin을 넣고, 패스워드에는 원클릭 설치 제일 처음에 적어뒀던 WebAdmin password 를 넣으면 됩니다.


혹시 기억이 나지 않는다면 



cat /usr/local/lsws/adminpasswd


위 명령어를 내리면 


WebAdmin user/password is admin/xxxxxxxxx

위와 같이 아이디 비번을 알려줍니다.




접속을 하면 위와 같은 대시보드가 뜹니다.


php 버전을 7.3에서 7.4로 바꾸려면 왼쪽 위에 Server Configuration > External App에 들어가면 


LiteSpeed SAPI App  lsphp  uds://tmp/lshttpd/lsphp.sock 이런 내용이 있는데


오른쪽에 Actions에 보면 가운데 버튼이 수정 버튼입니다. 


그걸 누른 후 가운데 쯤에 Command가 있는데 lsphp73/bin/lsphp 를 lsphp74/bin/lsphp로 바꾸고 


오른쪽 위에 디스켓 모양을 누르면 저장이 됩니다. 저장 후 오른쪽 위에 보면 새로고침 버튼이 있는데 그걸 누르면 서버를 재시작해서 적용이 됩니다.




2. 관리자 ID 및 비번 변경하기


관리자 ID를 admin으로 두는 것은 위험합니다. 물론 Nginx에서 관리자 페이지를 IP 차단해두면 큰 문제는 없지만요.


그래도 수정해두는게 좋겠죠?


아까 대시보드 화면에서 WebAdmin Settings > General > Users 를 누르면 유저네임에 admin이 하나 뜹니다.


오른쪽에 Actions에 수정 버튼을 누른 후 원하는 아이디 및 비번을 설정해주면 됩니다. 저장 후 다시 새로고침 버튼을 누르면 로그아웃되는데, 설정한 아이디 비번으로 접속하면 됩니다.




3. 관리자 페이지 SSL 인증서 경로 수정하기


관리자 페이지는 기본적으로 SSL이 적용되어 있습니다. 하지만 이 인증서는 자체 인증한 인증서로써 3년이 지나면 폐기됩니다.


우리는 이미 Let's encrypt 와일드카드 인증서가 있기 때문에 그 경로로 바꿔주면 폐기를 걱정안해도 됩니다.


대시보드 -> WebAdmin Settings - Listener adminListener > General > SSL > SSL Private Key & Certificate


위 경로에서 수정 버튼을 누르면 


Private Key File  $SERVER_ROOT/admin/conf/webadmin.key

Certificate File   $SERVER_ROOT/admin/conf/webadmin.crt

위와 같이 자체 인증서 경로로 되어있음을 알 수 있습니다.


위에 프라이빗키 경로를 /etc/letsencrypt/live/yoursite.com/privkey.pem


아래 인증서 파일 경로를 /etc/letsencrypt/live/yoursite.com/fullchain.pem


위와 같이 yoursite.com을 기록해두셨던 경로로 꼭 바꿔주고 저장한 뒤에 새로고침하면 됩니다.




4. 확장자별 만료기한 설정하기


이미지, js, css, font 파일이 전부 7일로 되어있습니다.


그래서 수정해줄 것입니다.


대시보드 > Virtual Hosts > wordpress > General 에 보면 밑 부분에 Expires Settings가 있습니다.


수정 버튼을 누른 후 


Enable Expires > Yes 체크


Expires Default > 비워두기


Expires By Type에


image/*=A31536000,text/css=A31536000,application/x-javascript=A31536000,application/javascript=A31536000,font/*=A31536000,application/x-font-ttf=A31536000

위 내용을 넣어주면 만료기간이 1년으로 잡힙니다. 그리고 저장 후 새로고침 버튼을 누르면 적용됩니다.




5. lsphp 셋팅값 넣어주기


(1)에서 php7.4는 수작업으로 넣어줬는데요.


오픈라이트스피드 웹서버에서는 관리자페이징에서 오버라이드 해주면 바로 적용됩니다.


대시보드 > Virtual Hosts > wordpress > Context 에 보면 타입에 NULL이 있는데 오른쪽에 수정버튼을 누릅니다.


제일 밑에 보면 php.ini Override 가 있는데 여기에


php_value short_open_tag On

php_value memory_limit 256M

php_value cgi.fix_pathinfo 0

php_value upload_max_filesize 100M

php_value post_max_size 101M

php_value max_execution_time 360

php_value date.timezone Asia/Seoul

위 내용을 넣고 저장 후 새로고침 누르면 자동 적용됩니다. 참 쉽죠? ^^




6. 서버의 LSCACHE 저장소를 RAM에 올리기


오픈라이트스피드 웹서버의 LSCACHE는 Nginx의 FastCGI 캐시 역할을 하는 모듈인데요.


그 저장소를 RAM으로 지정할 수 있습니다.


대시보드 > Virtual Hosts > wordpress > Modules에 보면 비어있는데요.


오른쪽에 + 를 누르면 추가할 수 있습니다. Module을 눌러보면 cache가 있는데 그것을 선택하고 


Module Parameters 에 


storagepath /run/lscache

위 내용을 넣습니다. 그리고 Enable Module을 Yes에 체크한 뒤에 저장 후 새로고침하면 


이제 캐시 파일이 전부 RAM에 저장됩니다.


Nginx의 Proxy cache도 RAM에 저장되고, 오픈라이트스피드 웹서버의 LSCACHE도 RAM에 저장되니


슈퍼스피드가 됩니다.



다음 글에서는 드디어 워드프레스에 접속해서 LiteSpeed Cache 플러그인 설정을 해보겠습니다.

, , , ,

6 Comments
해를쏘다 08.03 13:09  
강좌 열심히 챙겨보고 있습니다.^^ 그리고 우성군님 캐시 관련해서 궁금한 사항이 있습니다.
램에다 캐시를 설정하면 서버 재부팅시 날라가게 되는건가요 아니면 재부팅후에도 캐시 재생성 없이 다시 쓸 수 있는건가요? 우성군님은 서버 재부팅 얼마 주기로 하시나요?
그리고 A 사용자가 특정페이지를 봐서 서버에 캐시가 생성된 후 B사용자도 같은 페이즐 본다고 가정할대 B사용자는 A사용자 때 생성된 캐시를 그대로 사용할 수 있게 되는건가요? 아님 B사용자도 같은 페이지를 본다 하더라도 캐시를 다시 생성하게 되는건가요? 즉 같은 페이지라도 사용자별로 서버에 캐시가 각각 생기는건가요?
초보라 질문이 많았습니다. 답변 좀 부탁드립니다 (__)
우성군 08.03 13:32  
[@해를쏘다] 반갑습니다 ^^

1. 램에 캐시를 설정하면 서버 재부팅시 캐시가 날아갑니다.

저는 서버 재부팅을 거의 하지 않습니다. 지금 이 홈페이지가 돌아가는 홈서버도 60일 이상 재부팅없이 돌아가고 있습니다.

2. A사용자가 특정페이지를 보고 캐시가 생성이 된다면 B사용자가 특정페이지를 보면 그 캐시된 페이지를 바로 보게 됩니다. 캐시 옵션으로 해당페이지를 1번 보고 캐시를 생성할지 2번 보고 캐시를 생성할지 지정할 수 있습니다.


proxy_cache_min_uses 1; # 해당 파일에 처음 접근하자마자 바로 캐시 생성


위와 같이 캐시 옵션에서 1을 넣으면 누구든지 한번 접근하면 바로 캐시가 생성되고, 2를 넣으면 2번 접근시 캐시가 생성됩니다.

따라서 사용자별로 캐시 페이지가 생성되지 않고 누구든지 한번 해당페이지를 보게되면 캐시가 생성됩니다. 그리고 그 캐시된 페이지는 누구나 같이 보게 됩니다.

따라서 그누보드나 클리앙 같은 커뮤니티 사이트에는 이 팁이 효과적이지 않습니다. 게시글 목록이 항상 갱신되고, 내용이 바뀌기 때문이죠.

하지만 워드프레스의 경우 글 내용이 자주 갱신되지 않기 때문에 이 팁이 효과적입니다.
해를쏘다 08.03 21:35  
[@우성군] 상세한 답변 감사드립니다^^
근데 저같은 경우 오라클 클라우드인데 서버 재부팅하면 캐시가 날라갈때가 있고 날라가지 않을때가 있는데.. 3번 중에 2번은 그대로네요 ;;
우성군 08.03 21:48  
[@해를쏘다] 어라 특이한 상황이네요 ㅎㅎ

아무래도 가상서버이기 때문에 실제로 재부팅 안할수도 있을 듯 합니다.

실제서버에서는 날아가야 정상이거든요 ㅎ

어떻게보면 안날아가는게 더 나을 수도 있겠죠.

서버의 자원을 절약할 수 있으니깐요.
해를쏘다 08.03 22:07  
[@우성군] 가상서버라 그럴수도 있겠군요..^^
우성군 08.03 22:17  
[@해를쏘다] 네 ㅎㅎ 신기하네요 ㅎ

아무튼 오라클이 열심히 투자하고 있기 때문에 혜택을 누리는 것은 좋다고 생각합니다.