编译安装nginx


挂载包含nginx的光驱

[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only

解压缩nginx到/usr/src目录下面

[root@localhost ~]# cd /mnt
[root@localhost mnt]# ls
cmake-2.8.12.tar.gz  nginx-1.6.2.tar.gz  SKYUC_3.4.2_for_php5.3.zip
mysql-5.5.38.tar.gz  php-5.3.28.tar.gz   ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
[root@localhost mnt]# tar xzf nginx-1.6.2.tar.gz -C /usr/src

编译安装 ./configure

[root@localhost mnt]# cd /usr/src
[root@localhost src]# ls
debug  kernels  nginx-1.6.2
[root@localhost src]# cd nginx-1.6.2/
[root@localhost nginx-1.6.2]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@localhost nginx-1.6.2]# ./configure --prefix=/usr/local/nginx
checking for OS
 + Linux 3.10.0-327.el7.x86_64 x86_64
checking for C compiler ... found
 + using GNU C compiler
 + gcc version: 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) 
checking for gcc -pipe switch ... found
checking for gcc builtin atomic operations ... found
checking for C99 variadic macros ... found
checking for gcc variadic macros ... found
checking for unistd.h ... found
checking for inttypes.h ... found
checking for limits.h ... found
...//中间省略
Configuration summary
  + using system PCRE library
  + OpenSSL library is not used
  + using builtin md5 code
  + sha1 library is not found
  + using system zlib library

  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/nginx/sbin/nginx"
  nginx configuration prefix: "/usr/local/nginx/conf"
  nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/nginx/logs/error.log"
  nginx http access log file: "/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

[root@localhost nginx-1.6.2]#

make && make install

[root@localhost nginx-1.6.2]# make && make install
make -f objs/Makefile
make[1]: Entering directory `/usr/src/nginx-1.6.2'
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \
    -o objs/src/core/nginx.o \
    src/core/nginx.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \
    -o objs/src/core/ngx_log.o \
    src/core/ngx_log.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs \
    -o objs/src/core/ngx_palloc.o \
    src/core/ngx_palloc.c

...//中间省略

cp conf/fastcgi.conf '/usr/local/nginx/conf/fastcgi.conf.default'
test -f '/usr/local/nginx/conf/uwsgi_params'         || cp conf/uwsgi_params '/usr/local/nginx/conf'
cp conf/uwsgi_params         '/usr/local/nginx/conf/uwsgi_params.default'
test -f '/usr/local/nginx/conf/scgi_params'         || cp conf/scgi_params '/usr/local/nginx/conf'
cp conf/scgi_params         '/usr/local/nginx/conf/scgi_params.default'
test -f '/usr/local/nginx/conf/nginx.conf'         || cp conf/nginx.conf '/usr/local/nginx/conf/nginx.conf'
cp conf/nginx.conf '/usr/local/nginx/conf/nginx.conf.default'
test -d '/usr/local/nginx/logs'         || mkdir -p '/usr/local/nginx/logs'
test -d '/usr/local/nginx/logs' ||         mkdir -p '/usr/local/nginx/logs'
test -d '/usr/local/nginx/html'         || cp -R html '/usr/local/nginx'
test -d '/usr/local/nginx/logs' ||         mkdir -p '/usr/local/nginx/logs'
make[1]: Leaving directory `/usr/src/nginx-1.6.2'
[root@localhost nginx-1.6.2]# cd /etc/init.d

将已经写好的脚本吸入到nginx当中

[root@localhost init.d]# vi nginx

~                                                                                                                                                    
~                                                                                                                                                    
~                                                                                                                                                    
~                                                                                                                                                    
~                                                                                                                                                    
~                                                                                                                                                    
~                                                                                                                                                   
...//中间省略                                                                                                                                                   
~                                                                                                                                                    
:r /mnt/nginx_script
#!/bin/bash
# chkconfig: 2345 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
  start)
   netstat -anplt |grep ":80" &> /dev/null && pgrep "nginx" &> /dev/null
   if [ $? -eq 0 ]
   then
     echo "Nginx service already running."
   else
     $PROG -t &> /dev/null
     if [ $? -eq 0 ] ; then 
       $PROG
       echo "Nginx service start success."
     else
     $PROG -t
     fi
   fi
   ;;
  stop)
   netstat -anplt |grep ":80" &> /dev/null && pgrep "nginx" &> /dev/null
   if [ $? -eq 0 ]
   then
    kill -s QUIT $(cat $PIDF)
    echo "Nginx service stop success." 
   else
    echo "Nginx service already stop"
   fi
   ;;
  restart)
    $0 stop
    $0 start

给nginx执行权限,开启nginx


[root@localhost init.d]# chmod +x nginx
[root@localhost init.d]# chkconfig nginx on
[root@localhost init.d]# service nginx start 
Nginx service start success.

测试


results matching ""

    No results matching ""