Nginx

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2024년 7월 12일 (금) 14:06 판 (→‎개요)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
둘러보기로 이동 검색으로 이동

개요[편집 | 원본 편집]

아파치와 같은, 유명한 웹서버.

설정파일[편집 | 원본 편집]

파일 설명
/etc/nginx/sites-availables/ 사용 예정인 설정 파일을 이곳에 보관한다.
/etc/nginx/sites-enables/ 사용할 설정파일을 이곳에 보관한다. 이곳에 있는 모든 설정파일을 작동하기 때문에 포트가 겹치는 설정파일이 있으면 에러가 난다.
의도 설명 방법
테스트 엔진엑스 작동에 대한 테스트를 수행한다.

(설정파일 등이 정상인가 파악)

sudo nginx -t

SSL 인증[편집 | 원본 편집]

의도 설명 방법
Certot을 이용한 인증. https 주소를 사용하기 위한 인증이다.

비영리 인증기관인 Let's Encrypt의 인증을 certbot을 통해 자동으로 인증받는 과정.

Certot 문서 참조.
openssl을 사용한 인증. 개인 ssl인증을 하게 도와주는 도구. openssl 문서 참조.

파일 업로드 설정[편집 | 원본 편집]

적절한 값을 설정해두어야 파일을 올릴 수 있다. 설정파일을 변경하든가, 사이트 설정을 변경하는 방법으로 가능.

설정파일을 변경하는 경우 설명
우분투 경로 : /etc/nginx/nginx.conf
http {
    ...
    client_max_body_size 100M;
    ...
}
우분투 경로 : /etc/nginx/sites-available/example.com
server {
    ...
    client_max_body_size 100M;
    ...
}


## 해당 경로별 개별적으로 설정하고 싶은 경우.
server {
    ...
    location /upload {
        client_max_body_size 50M;
        ...
    }
    ...
}
  • nginx -t // 설정파일 확인.
  • systemctl restart nginx // 재시작.

에러[편집 | 원본 편집]

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Unknown error)[편집 | 원본 편집]

nginx: [emerg] "worker_processes" directive is not allowed here in /etc/nginx/sites-enabled/nginx_conf:1[편집 | 원본 편집]

위 형태의 에러는 경로가 sites-enabled에 있는 것으로 보아... 거의 사용자 설정 문제이다.