Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- JavaScript
- jenkins github 연동
- 리눅스
- MySQL
- Spring Boot
- jenkins jdk
- IntelliJ
- Docker
- error
- jenkins maven
- Jenkins Pipeline
- jenkins 설치
- 리액트
- CI/CD
- spring
- MongoDB
- grafana
- java
- jenkins install
- jpa
- nginx
- vue.js
- Jenkins
- REACT
- subnetmask
- docker network
- gradle
- grpc
- Linux
- jenkins github
Archives
- Today
- Total
뭐든 즐기면서 ;)
Linux NginX 설치 / 리눅스 NginX 설치 / Linux WebServer 본문
728x90
* packageManager를 통한 설치가 아닌 Compile(GCC)를 이용한 설치입니다.
- packageManager를 사용하지 않는 이유
- 본인이 원하는대로 설치하기 위함입니다. (설치 위치 등)
- NginX의 확장 기능 모듈을 이용하기 위함입니다. (모듈 리스트 :http://wiki.nginx.org/3rdPartyModules )
설치 방법
- NginX 사이트 접속 : http://nginx.org/
- download 페이지로 이동하여 tar파일 다운로드 링크를 복사하여 줍니다. : http://nginx.org/en/download.html
왼쪽 라인에 있는 것이 리눅스에 설치하기 위한 tar파일 다운로드 링크입니다. 우클릭하여 링크 주소 복사를 해주세요.
- tar 풀기
> wget http://nginx.org/download/nginx-1.20.2.tar.gz
> tar -zxvf nginx-1.20.2.tar.gz
- wget 명령어를 통하여 필요한 라이브러리 다운받기
-
> wget [라이브러리 다운로드 링크주소]
- PCRE : NginX는 Perl5에서 사용하는 정규표현식 라이브러리인 PCRE를 사용합니다.
- OPPENSSL : https 모듈인 HttpSslModule을 사용하기 위해 필요한 라이브러리입니다.
- zlib : ngx_http_gzip_module 모듈을 사용하기 위해 필요한 라이브러리입니다.
-
- tar 명령어를 통하여 위 라이브러리들을 모두 풀어주세요.
본격적인 NginX 설치
- GCC 설치 : 컴파일 하기 위해 C, C++ 컴파일러를 설치합니다.
-
> sudo apt-get install gcc g++; # 또는 > yum install gcc-c++;
-
- 환경설정 : configure 명령어
- nginx의 소스 디렉토리로 이동합니다.
-
- ./configure 명령어를 통해서 NginX 구동 시 함께 사용할 라이브러리들을 설정해 줍니다.
> ./configure --with-zlib=./lib/zlib-1.2.11 --with-pcre=./lib/pcre-8.00 --with-openssl=./lib/openssl-1.0.1g --prefix=/webserver/nginx --user=root --group=root # 옵션 설명 --with-(zlib | pcre | openssl) : NGINX가 의존하고 있는 라이브러리들의 소스 경로 --with-(http_ssl_module | debug) : NGINX를 설치할 때 ssl, debug 모듈을 활성화합니다. 이 모듈들은 NGINX가 제공하는 내부 모듈이지만 기본적으로는 설치가 되지 않는 옵션사항입니다. --add-module : 외부 모듈인 echo 모듈의 소스가 위치하는 디렉토리 --prefix : NGINX가 설치될 기본 디렉토리를 의미합니다. 이 디렉토리 하위에 NGINX의 실행, 로깅, 설정 파일들이 설치됩니다. --user, --gourp : --user뒤에 작성한 사용자의 권한으로 NGXIN를 실행시킵니다. --user뒤에 작성한 사용자가 없다면 만들어야 합니다. 사용자의 리스트는 아래의 명령을 통해서 알 수 있습니다.
-
# 비정상적인 실행 결과입니다. # 없는 user를 설정하였을 때입니다. # configure 명령어 실행 > ./configure --with-zlib=./lib/zlib-1.2.11 --with-pcre=./lib/pcre-8.32 --with-openssl=./lib/openssl-1.0.1e --prefix=/webserver/nginx --user=www-data --group=www-data # 에러 내용 ./configure: error: invalid option "" # 존재하지 않는 계정과 그룹을 써서 난 에러입니다. # www-data 계정을 생성해 주던가, 있는 user계정을 써야 합니다.
- 컴파일 : make 명령어
-
> make
-
- 설치 : make install 명령어
-
# 꼭 wget으로 nginx 다운 받았던 경로에서 실행 또는 make 실행한 곳에서 실행. <둘 중 어느 것인지 불확실. # make 명령어를 통하여 makeFile이 생성이 되고 # make install 명령어를 통하여 makeFile에 있는 명령어들을 실행하게 만드는 것. > make install
- conf = 설정파일logs = 로그 파일
- sbin = ./sbin/nginx 실행파일(nginx 구동)
- html = 기본 document_root
-
- NginX실행
- ./sbin 폴더 아래 nginx파일을 이용하여 실행합니다.
- 에러 발생 : nginx: [emerg] getgrnam("roo") failed
- Nginx에는 master process와 worker process가 있다고 합니다.
- 해결 방법 : worker process user를 바꿔줘야 함
- conf 폴더로 이동합니다.
-
# nginx.conf 파일을 열어서 수정합니다. > vi nginx.conf
nginx.conf 파일 -
위 이미지에 표시한 부분을 userId에 맞게 수정해 주시면 됩니다.
- * 실행시 주의할 점이 있습니다. 방화벽에서 80번포트가 열려 있어야 웹서비스가 가능합니다.
-
> firewall-cmd --permanent --zone=public --add-port=80/tcp > firewall-cmd --permanent --zone=public --add-service=https # firewall 수정 후에는 꼭 reload 해줘야 합니다. > firewall-cmd --reload
-
- sbin으로 이동하여 ./nginx를 다시 실행시켜 봅니다.
# conf파일 수정 후 적용하기
> /usr/sbin/nginx -s reload
- nginx.conf server 블럭 추가 설정 : https://tadaiswhatever.tistory.com/34
728x90
'서버' 카테고리의 다른 글
Docker network 연결 확인 (0) | 2023.02.07 |
---|---|
EMS grafana(데이터 수집&통합) 세팅 - 1) 설치 및 대쉬보드 생성 (0) | 2023.02.01 |
linux process의 thread 확인 방법 (0) | 2023.01.17 |
NginX CentOS install / CentOS NignX install (0) | 2022.07.21 |
NginX 설정파일 / NginX virtual host 설정 (0) | 2021.11.22 |
Comments