1、安装GCC和GCC-C++
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# cd /usr/java
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# yum install gcc
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# yum install -y gcc-c++
2. 因为nginx需要依赖pcre库、zlib库、openssl库,所以需要下载这三个库以及nginx源码。
2.1 安装pcre库
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# wget ftp:
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# tar -zxvf pcre-8.39.tar.gz</span>
2.2 安装zlib库
这是我先下载好的包 zlib-1.2.8.tar.gz 上传
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# tar -zxvf zlib-1.2.8.tar.gz
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# cd zlib-1.2.8/</span>
2.3 安装openssl库
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# wget http:
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# tar -zxvf openssl-1.0.1c.tar.gz</span>
注:也可以一起安装
yum install gcc gcc-c++ make automake autoconf libtool pcre* zlib openssl openssl-devel
2.4 安装nginx
这是我先下载好的包 nginx-1.11.5.tar.gz 上传
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# tar -zxvf nginx-1.11.5.tar.gz</span>
使用命令编译nginx
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# cd nginx-1.11.5
- [root@iZwz91nfqrmmcjz3ax4vqvZ nginx-1.11.5]# ./configure --prefix=/usr/java/nginx --conf-path=/usr/java/nginx/conf/nginx.conf
- --pid-path=/usr/java/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/java/pcre-8.39 --with-zlib=/usr/java/zlib-1.2.8
- --with-openssl=/usr/java/openssl-1.0.1c
- [root@iZwz91nfqrmmcjz3ax4vqvZ nginx-1.11.5]# make
- [root@iZwz91nfqrmmcjz3ax4vqvZ nginx-1.11.5]# make install </span>
configure命令是用来检测你的安装平台的目标特征的。它定义了系统的各个方面,包括nginx的被允许使用的连接处理的方法,比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本,执行结束时,它会创建一个Makefile文件。
3.启动nginx
- <span style="font-size:18px;">[root@iZwz91nfqrmmcjz3ax4vqvZ java]# /usr/java/nginx/sbin/nginx </span>
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# /usr/java/nginx/sbin/nginx -s stop
重启
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# /usr/java/nginx/sbin/nginx -s reload
4. 设置防火墙
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# firewall-cmd --zone=public --add-port=80/tcp --permanent;
- [root@iZwz91nfqrmmcjz3ax4vqvZ java]# firewall-cmd --reload;
5.测试
120.77.213.193 出现下面界面说明成功!
6. 设置nginx开机启动
在 /etc/init.d/ 目录下创建nginx文件 其中nginxd ,nginx_config, nginx_pid 的值根据具体目录配置,文件内容如下:
- <span style="font-size:14px;">#!/bin/bash
- # nginx Startup script for the Nginx HTTP Server
- # it is v.0.0.2 version.
- # chkconfig: - 85 15
- # description: Nginx is a high-performance web and proxy server.
- # It has a lot of features, but it's not for everyone.
- # processname: nginx
- # pidfile: /var/run/nginx.pid
- # config: /usr/java/nginx/conf/nginx.conf
- nginxd=/usr/java/nginx/sbin/nginx
- nginx_config=/usr/java/nginx/conf/nginx.conf
- nginx_pid=/usr/java/nginx/logs/nginx.pid
- RETVAL=0
- prog="nginx"
- # Source function library.
- . /etc/rc.d/init.d/functions
- # Source networking configuration.
- . /etc/sysconfig/network
- # Check that networking is up.
- [ ${NETWORKING} = "no" ] && exit 0
- [ -x $nginxd ] || exit 0
- # Start nginx daemons functions.
- start() {
- if [ -e $nginx_pid ];then
- echo "nginx already running...."
- exit 1
- fi
- echo -n $"Starting $prog: "
- daemon $nginxd -c ${nginx_config}
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
- return $RETVAL
- }
- # Stop nginx daemons functions.
- stop() {
- echo -n $"Stopping $prog: "
- killproc $nginxd
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/java/nginx/logs/nginx.pid
- }
- # reload nginx service functions.
- reload() {
- echo -n $"Reloading $prog: "
- #kill -HUP `cat ${nginx_pid}`
- killproc $nginxd -HUP
- RETVAL=$?
- echo
- }
- # See how we were called.
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- reload)
- reload
- ;;
- restart)
- stop
- start
- ;;
- status)
- status $prog
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $prog {start|stop|restart|reload|status|help}"
- exit 1
- esac
- exit $RETVAL </span>
设置文件的访问权限:
chmod a+x /etc/init.d/nginx (a+x参数表示 ==> all user can execute 所有用户可执行)
chkconfig nginx on
最后将ngix加入到rc.local文件中,这样开机的时候nginx就默认启动了
vim /etc/rc.local
添加
/etc/init.d/nginx start
:wq!
重启生效