CentOS7yum 또는 소스 패키지 설치 Nginx 의 공통점 과 차이 점 (구체 적 인 설치 과정 이 있 음)

8543 단어
cent 에서 소프트웨어 를 설치 하 는 방식 은 대부분 yum 또는 소스 코드 로 설치 된다.yum 설 치 는 온라인 설치 방식 으로 설치 가 간단 하고 오류 가 발생 하지 않 습 니 다.소스 패키지 설 치 는 먼저 Nginx 의 소스 코드 를 다운로드 하여 자신의 시스템 에서 실행 가능 한 파일 을 컴 파일 한 다음 에 실행 하 는 것 이다. 장점 은 자신의 시스템 에서 컴 파일 된 것 이기 때문에 자신의 시스템 의 성능 에 더욱 부합된다. 즉, 자신의 시스템 에서 Nginx 서 비 스 를 수행 하 는 성능 이 더욱 효율 적 이라는 것 이다.
설치 디 렉 터 리 가 다 릅 니 다.
yum 온라인 설 치 는 Nginx 를 다른 위치 에 설치 합 니 다. 명령 을 통 해:
rpm -ql nginx

설치 경 로 를 보면 많은 경로 가 표 시 됩 니 다.
➜  ~ rpm -ql nginx
/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/conf.d/ssl.conf
/etc/nginx/conf.d/virtual.conf
/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi.conf.default
/etc/nginx/fastcgi_params
/etc/nginx/fastcgi_params.default
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/mime.types.default
/etc/nginx/nginx.conf
/etc/nginx/nginx.conf.default
/etc/nginx/scgi_params
/etc/nginx/scgi_params.default
/etc/nginx/uwsgi_params
/etc/nginx/uwsgi_params.default
/etc/nginx/win-utf
/etc/rc.d/init.d/nginx
/etc/sysconfig/nginx
/usr/lib/perl5/vendor_perl/auto/nginx
/usr/lib/perl5/vendor_perl/auto/nginx/nginx.so
/usr/lib/perl5/vendor_perl/nginx.pm
/usr/sbin/nginx
/usr/share/doc/nginx-1.0.15
/usr/share/doc/nginx-1.0.15/CHANGES
/usr/share/doc/nginx-1.0.15/LICENSE
/usr/share/doc/nginx-1.0.15/README
/usr/share/man/man3/nginx.3pm.gz
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/usr/share/nginx/html/nginx-logo.png
/usr/share/nginx/html/poweredby.png
/usr/share/vim/vimfiles/ftdetect/nginx.vim
/usr/share/vim/vimfiles/indent/nginx.vim
/usr/share/vim/vimfiles/syntax/nginx.vim
/var/lib/nginx
/var/lib/nginx/tmp
/var/log/nginx

마 운 트 해제 시 명령 으로 만 마 운 트 해제 할 수 있 습 니 다. 이 파일 들 을 수 동 으로 삭제 하 는 것 은 현실 적 이지 않 기 때문에 명령 을 통 해 마 운 트 해제 해 야 합 니 다.
rpm -e nginx

마 운 트 를 해제 합 니 다. 가방 에 의존 하 는 관계 로 잘못 보고 되면 사용 해 보십시오.
rpm -e --nodeps nginx

강제로 마 운 트 해제 하고 의존 문 제 를 무시 합 니 다.
원본 패키지 에 설 치 된 파일 은 같은 디 렉 터 리 에 있 습 니 다. 마 운 트 해제 할 때 폴 더 를 삭제 하면 됩 니 다. 보통 / usr / local / 패키지 이름 디 렉 터 리 에 있 습 니 다.
시작 방식 이 다 릅 니 다.
yum 에 설 치 된 Nginx 는 service 시스템 서비스 명령 을 통 해 켜 거나 닫 을 수 있 습 니 다.
service nginx start #   nginx   

service nginx stop #   nginx   

service nginx restart #   nginx   

원본 패키지 가 설 치 된 Nginx 가 시 작 될 때 설치 디 렉 터 리 에 있 는 sbin 디 렉 터 리 에서 Nginx 서 비 스 를 시작 해 야 합 니 다.
➜  ~ /usr/local/nginx/sbin/nginx           #   nginx   
➜  ~ /usr/local/nginx/sbin/nginx -s stop   #   nginx   

또는 디 렉 터 리 에 직접 들 어가 서 실행 합 니 다. / nginx 도 Nginx 서 비 스 를 열 수 있 습 니 다.
➜  ~ cd /usr/local/nginx/sbin 
➜  sbin ls
nginx
➜  sbin ./nginx           #   nginx   
➜  sbin ./nginx -s stop   #   nginx   

yum 설치
yum - y install nginx 를 사용 하여 설치:
➜  ~ yum -y install nginx
     :fastestmirror, security
      
Loading mirror speeds from cached hostfile
      
-->       
---> Package nginx.i686 0:1.0.15-12.el6 will be   
-->         

      

========================================================================================================================================
                                                                                                                            
========================================================================================================================================
    :
 nginx                         i686                         1.0.15-12.el6                            epel                         410 k

    
========================================================================================================================================
Install       1 Package(s)

    :410 k
Installed size: 1.1 M
     :
nginx-1.0.15-12.el6.i686.rpm                                                                                     | 410 kB     00:00     
   rpm_check_debug 
      
      
    
Warning: RPMDB altered outside of yum.
         : nginx-1.0.15-12.el6.i686                                                                                             1/1 
  Verifying  : nginx-1.0.15-12.el6.i686                                                                                             1/1 

   :
  nginx.i686 0:1.0.15-12.el6                                                                                                            

  !

Nginx 서버 시작:
➜  ~ service nginx start
Starting nginx:                                            [  OK  ]

Nginx 서버 정지:
➜  ~ service nginx stop 
Stopping nginx:                                            [  OK  ]

Nginx 서버 다시 시작:
➜  ~ service nginx restart
Stopping nginx:                                            [  OK  ]
Starting nginx:                                            [  OK  ]

시작 하면 브 라 우 저 에 서버 의 IP 주 소 를 입력 하면 Nginx 서비스 홈 페이지 를 볼 수 있 습 니 다!
원본 패키지 설치 Nginx
우선 컴 파일 에 필요 한 의존 패 키 지 를 설치 해 야 합 니 다 (제 가 사용 하 는 CentOS 6.7).
yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel

/ root 디 렉 터 리 에 원본 패키지 다운로드:
wget http://nginx.org/download/nginx-1.10.1.tar.gz

압축 풀기:
tar -zxvf nginx-1.10.1.tar.gz

압축 을 푼 후 nginx - 1.10.1 디 렉 터 리 에 들 어 갑 니 다.
➜  ~ ls
anaconda-ks.cfg  install.log  install.log.syslog  nginx-1.10.1  nginx-1.10.1.tar.gz 
➜  ~ cd nginx-1.10.1 

디 렉 터 리 에서 설정 과 make 명령 을 실행 합 니 다:
➜  nginx-1.10.1 ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre

➜  nginx-1.10.1 make && make install

시작 정지 Nginx 서비스:
➜  ~ /usr/local/webserver/nginx/sbin/nginx           #   nginx   
➜  ~ /usr/local/webserver/nginx/sbin/nginx -s stop   #   nginx   

시스템 서비스 에 Ningx 추가
새 파일 / etc / init. d / nginx:
vim /etc/init.d/nginx

다음 내용 추가:
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemin
#
# chkconfig:   - 85 15 
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /usr/local/nginx/conf/nginx.conf
# pidfile:     /usr/local/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/nginx/sbin/nginx"
prog=$(basename $nginx)
 
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
 
lockfile=/var/lock/subsys/nginx
 
start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    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
    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

수정 권한:
chmod 755 /etc/init.d/nginx

부팅 시작:
chkconfig nginx on

시스템 서비스 에 추가 한 후 시작 등 명령 이 약간 변 했 습 니 다.
시작 | 닫 기 | 다시 시작 | 다시 불 러 오기 | 서비스 상태 | 파일 테스트:   service nginx start|stop|restart|reload|status|configtest

좋은 웹페이지 즐겨찾기