CentOS 7 컴 파일 설치 nginx

[size = large] [color = brown] 설 치 된 운영 체 제 는 CentOS - 7 - x86 입 니 다.64 - Minimal - 511, ngixn 버 전 은 nginx - 1.10.1. tar. gz 입 니 다. 첨부 파일 참조.[/color][/size]
[size = large] [b] 첫걸음 [/ b] [/ size]
CentOS - 7 설치 후, 신 마 는 생각 하지 않 아 도 됩 니 다. 서버 에 연결 한 후, 먼저 Xshell 또는 SecureCRT 로 다음 과 같은 몇 가지 명령 을 수행 합 니 다. 그 다음 에 nginx 를 컴 파일 할 때 시스템 에서 이 를 검 측 합 니 다. 모두 구덩이 입 니 다 ~ ~ ~
파일 업로드 및 다운로드: yum - y install lrzsz
패키지 다운로드 명령: yum - y install wget
perl 언어 실행 환경: yum - y install perl
C 언어 컴 파일 환경: yum - y install gcc gcc - c + + (컴 파일 이 필요 한 프로그램 이나 c 언어의 실행 가능 한 프로그램 은 대부분 이 환경 이 필요 합 니 다)
[size = large] [b] 두 번 째 다운로드 패키지 [/ b] [/ size]
rz 명령 을 사용 하여 nginx - 1.10.1. tar. gz 를 / usr / local / src / 디 렉 터 리 에 업로드 하고 압축 을 풀 수 있 습 니 다 (명령: tar zxvf nginx - 1.10.1. tar. gz). 보통 컴 파일 설치 가 필요 한 프로그램 은 이 디 렉 터 리 아래 에 두 는 것 을 권장 합 니 다.각종 필요 한 소프트웨어 패 키 지 를 다운로드 하려 면 다음 과 같다.

cd /usr/local/src/ &&
wget -ct 5 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz &&
wget -ct 5 http://www.openssl.org/source/openssl-1.0.1i.tar.gz &&
wget -ct 5 http://zlib.net/zlib-1.2.10.tar.gz &&
wget -ct 5 http://www.cmake.org/files/v2.8/cmake-2.8.11.2.tar.gz &&
wget -ct 5 http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz &&
wget -ct 5 http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz &&
wget -ct 5 https://bitbucket.org/libgd/gd-libgd/downloads/libgd-2.1.0.tar.gz &&
wget -ct 5 http://download.osgeo.org/libtiff/tiff-4.0.3.tar.gz &&
wget -ct 5 ftp://ftp.simplesystems.org/pub/png/src/libpng16/libpng-1.6.28.tar.gz &&
wget -ct 5 http://www.ijg.org/files/jpegsrc.v9a.tar.gz &&
echo " !


openssl - 1.0.1i, pcre - 8.39, zlib - 1.2.10 세 개의 가방 을 풀 고 다른 가방 은 잠시 압축 을 풀 지 않 습 니 다.
[color = red] 설명: 첫 번 째 줄 cd / usr / local / src / 는 이 가방 들 을 다운로드 한 저장 디 렉 터 리 를 말 합 니 다.위 파일 에는 두 개의 ftp 파일 이 다운로드 되 어 있 습 니 다. 브 라 우 저 에 주 소 를 복사 하여 다운로드 한 후 / usr / local / src / 디 렉 터 리 에 업로드 한 다음 ftp 가 있 는 두 줄 을 삭제 하 는 것 을 권장 합 니 다. Xshell 에서 이 명령 을 수행 할 때 ftp 파일 을 다운로드 할 수 없 기 때 문 입 니 다.[/color]
[size = large] [b] 세 번 째 컴 파일 nginx 설치 패키지 [/ b] [/ size]

cd /usr/local/src &&
tar -zxvf nginx-1.10.1.tar.gz &&
cd nginx-1.10.1 &&
./configure --prefix=/usr/local/mysoft/nginx \
--without-http_memcached_module \
--user=www \
--group=www \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-openssl=/usr/local/src/openssl-1.0.1i \
--with-zlib=/usr/local/src/zlib-1.2.10 \
--with-pcre=/usr/local/src/pcre-8.39 \
--with-http_stub_status_module \
--with-http_sub_module \

[color = red] 설명:
Xshell 을 사용 하여 서버 루트 디 렉 터 리 에 연결 한 후 위 명령 행 에서
cd /usr/local/src &&
tar -zxvf nginx-1.10.1.tar.gz &&
cd nginx-1.10.1 &&
컴 파일 할 nginx 패키지 디 렉 터 리 를 지정 하 는 데 사 용 됩 니 다. 물론 cd usr / local / src / nginx - 1.10.1 을 먼저 실행 하여 nginx 압축 해제 패키지 디 렉 터 리 를 직접 찾 을 수 있 습 니 다. 그러면 상기 컴 파일 코드 는 다음 과 같은 간단 한 형식 으로 변 경 됩 니 다.
[/color]

./configure --prefix=/usr/local/mysoft/nginx \
--without-http_memcached_module \
--user=www \
--group=www \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-openssl=/usr/local/src/openssl-1.0.1i \
--with-zlib=/usr/local/src/zlib-1.2.10 \
--with-pcre=/usr/local/src/pcre-8.39 \
--with-http_stub_status_module \
--with-http_sub_module \

[color = red] 설명:
-- prefix = / usr / local / mysoft / nginx 는 nginx 를 지정 하기 위해 디 렉 터 리 에 설치 해 야 합 니 다. 방금 압축 을 풀 었 던 디 렉 터 리 와 분 리 됩 니 다. 일반적인 상황 에서 사용자 정의 로 설 치 된 패 키 지 는 / usr / local / 아래 에 두 는 것 을 권장 합 니 다. 여 기 는 이 디 렉 터 리 아래 에 my soft 디 렉 터 리 를 만 든 다음 에 nginx 디 렉 터 리 를 만들어 시스템 프로그램 과 구분 하 는 것 을 권장 합 니 다.
-- with - openssl = / usr / local / src / openssl - 1.0.1i \ 는 아까 두 번 째 단계 에서 압축 을 푼 디 렉 터 리 입 니 다.
-- with - zlib = / usr / local / src / zlib - 1.2.10 \ 동상
-- with - pcre = / usr / local / src / pcre - 8.39 \ 동상
이 세 개의 서 류 는 반드시 필요 하 다. 그렇지 않 으 면 뒤에 구덩이 가 생 길 것 이다. 알 잖 아 ~ ~
[/color]
차 로 돌아 가 게임 명령 을 실행 한 후, Xshell 에 오류 가 있 는 지 확인 하고, 위 절차 에 따라 내 려 오 면 틀 리 지 않 을 것 입 니 다 ~ ~이 nginx 컴 파일 검 측 이 완료 되 었 습 니 다. 그 다음 에 아까 디 렉 터 리 에서 다음 과 같은 설치 명령 을 실 행 했 습 니 다. 인터넷 에서 도 컴 파일 과 설치 명령 을 함께 작성 하여 실 행 했 습 니 다. 개인 적 인 습관 을 분리 해서 실 행 했 습 니 다. 명확 합 니 다.

make && make install &&
echo " NGINX !"

콘 솔 에 'NGINX 설치 완료' 가 표 시 될 때 까지 기 다 렸 다가 cd usr / local / my soft / nginx 명령 을 실행 하고 이 디 렉 터 리 아래 에 파일 이 있 는 지 확인 하 십시오. 정상적으로 4 개의 디 렉 터 리 폴 더 가 있 습 니 다. 각각 conf, html, logs, sbin 입 니 다. 이 nginx 설치 에 성공 하 였 습 니 다.
[size = large] [b] 4 단계 시작 스 크 립 트 설정, 시작 Nginx: [/ b] [/ size]
Xshell 은 시스템 루트 디 렉 터 리 에 들 어가 다음 명령 vi / etc / init. d / nginx 를 실행 하고 스 크 립 트 를 만 듭 니 다. 디 렉 터 리 는 / etc / init. d / 아래로 지정 해 야 합 니 다.스 크 립 트 명령:

#!/bin/bash
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /usr/local/mysoft/nginx/conf/nginx.conf
# pidfile: /usr/local/mysoft/nginx/logs/nginx.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/mysoft/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/mysoft/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx.lock

make_dirs() {
# make required directories
user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
if [ -z "`grep $user /etc/passwd`" ]; then
useradd -M -s /bin/nologin $user
fi
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
}

start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}

stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}

restart() {
#configtest || return $?
stop
sleep 1
start
}

reload() {
#configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}

force_reload() {
restart
}

configtest() {
$nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
status $prog
}

rh_status_q() {
rh_status >/dev/null 2>&1
}

case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)

rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac

[color = red] 설명:
\ # 번호 로 시작 하 는 줄 은 세 줄 만 유용 하 다. 각각:
#!/bin/sh
\ # checkconfig: 시작 줄
\ # discription: 시작 줄
# config: /usr/local/mysoft/nginx/conf/nginx.conf
# pidfile: /usr/local/mysoft/nginx/logs/nginx.pid
이 두 설정 은 nginx 가 설치 한 성공 적 인 디 렉 터 리 폴 더 위 치 를 지정 합 니 다. nginx. pid 파일 프로그램 이 실 행 된 후에 생 성 됩 니 다.
nginx="/usr/local/mysoft/nginx/sbin/nginx"
이 설정 은 nginx 가 설치 한 디 렉 터 리 폴 더 의 위 치 를 지정 합 니 다.
NGINX_CONF_FILE="/usr/local/mysoft/nginx/conf/nginx.conf"
이 설정 은 nginx 가 설치 한 디 렉 터 리 파일 의 위 치 를 지정 합 니 다.
lockfile=/var/lock/subsys/nginx.lock
이 설정 은 시스템 의 / var / lock / subsys / 아래 에 지정 되 어 있 습 니 다. nginx. lock 은 이것 으로 사용자 정의 합 니 다.
실행 이 끝 난 후 ESC 를 누 르 면 편집 환경 을 종료 하고 실행: wq 파일 을 저장 하고 vi 를 종료 합 니 다.
[/color]
[size = large] [b] 다섯 번 째 단 계 는 서비스 [/ b] [/ size] 에 추가 합 니 다.
다음 명령 을 순서대로 실행 합 니 다.
chmod a+x /etc/init.d/nginx
chkconfig --add nginx
chkconfig nginx on
/etc/init.d/nginx start
모든 설정 이 끝 난 후 서버 나 가상 컴퓨터 를 다시 시작 하 는 것 을 권장 합 니 다.
마지막 사용 명령:
$ service nginx start
$ service nginx stop
$ service nginx restart
$ service nginx reload
$ /etc/init.d/nginx start
$ /etc/init.d/nginx stop
$ /etc/init.d/nginx restart
$ /etc/init.d/nginx reload
설정 이 성 공 했 는 지 확인 하기:
nginx 프로 세 스 조회: ps aux | grep nginx
검색 서버 ip: ifcfg
Liux 의 방화벽 정책: iptables - L (iptables 는 방화벽 이 고 - L 은 목록 정책)
서버 ip 을 조회 한 후, ip 주 소 를 네 비게 이 션 표시 줄 에 복사 하여 접근 합 니 다. "Welcome to nginx!" 의 환영 페이지 가 나타 나 면 nginx 서비스 설정 이 성공 적 임 을 표시 합 니 다.

좋은 웹페이지 즐겨찾기