服务器快速集成Nginx

1.安装依赖

1.1.pcre重定向依赖
yum -y install pcre*复制代码
  • PCRE(Perl Compatible Regular Expressions)是一个Perl库,不止具有http重定向依赖,还包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
    1.2.openssl(http/https支持,如果不需要https可以不安装。
    yum -y install pcre*复制代码
  • OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
    1.3.安装 Tengine 执行配置命令 gcc环境
    yum -y install gcc gcc-c++ autoconf automake make复制代码
  • 若是本机上已经安装则可以忽略,主要用于编译Nginx源码
2.下载解压
2.1.下载
wget http://nginx.org/download/nginx-1.12.2.tar.gz复制代码
2.2.解压

先创建Nginx存放路径,再进行解压

cd /usr/local/复制代码
mkdir nginxgz复制代码
tar -zxvf nginx-1.7.8.tar.gz -C /usr/local/nginxgz复制代码

3.编译安装Nginx

cd /usr/local/nginxgz/nginx-1.12.2复制代码
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre复制代码
  • --with-http_ssl_module : 支持https
  • --with-http_stub_status_module : 支持nginx状态查询
  • --with-http_v2_module : 支持Google发明的SPDY协议,必须有ssl的支持
  • --with-pcre : 支持rewrite重写功能,必须有pcre
    注:若是没有安装gcc则会报如下错误:
    checking for OS
    + Linux 2.6.32-431.el6.x86_64 x86_64
    checking for C compiler ... not found复制代码
    编译:
    make复制代码
    make install复制代码

    4.操作Nginx

  • 启动:
    /usr/local/nginx/sbin/nginx复制代码
  • 重启:
    /usr/local/nginx/sbin/nginx -s reload复制代码
  • 关闭:
    /usr/local/nginx/sbin/nginx -s stop复制代码

    5.配置防火墙(iptables)测试

    5.1.关闭防火墙
    service iptables stop复制代码
    5.2.编辑配置文件
    vi /etc/sysconfig/iptables复制代码
    5.3.开发80端口
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT复制代码
    5.4.重启服务
    service iptables restart复制代码
    测试,浏览器输入服务器地址(如:192.168.1.111)
    6.将Nginx添加到服务(service)中
  • 6.1.切换到启动脚本
    cd /etc/init.d复制代码
  • 6.2.创建nginx文件
    touch nginx复制代码
  • 6.3.编辑nginx文件
    vim /etc/init.d/nginx复制代码
  • 6.4.并且添加以下内容
    vim /etc/init.d/nginx复制代码
    ```
  • 6.4.并且添加以下内容
    #!/bin/bash

    nginx Startup script for the Nginx HTTP Server

    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/local/nginx/conf/nginx.conf

    nginxd=/usr/local/nginx/sbin/nginx
    nginx_config=/usr/local/nginx/conf/nginx.conf
    nginx_pid=/usr/local/nginx/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 /var/run/nginx.pid
}

reload nginx service functions.

reload() {

echo -n $"Reloading $prog: " 复制代码

$nginxd -s reload

#if your nginx version is below 0.8, please use this command: "kill -HUP `cat ${nginx_pid}`" 
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


注:复制代码

chkconfig: - 85 15

description: nginx is a World Wide Web server. It is used to serve

- 脚本中这两个不能去除,不然不能启动,而且会报以下错误,即语法错误复制代码

nginx 服务不支持 chkconfig

- chkconfig语法:复制代码

语 法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

- 6.5.保存退出后,切换路径复制代码

cd /etc/rc.d/init.d

- 6.6.设置权限复制代码

chmod +x nginx

- 6.7.chkconfig改变nginx运行级别复制代码

/sbin/chkconfig --level 345 nginx on
```
到此为止:
任何位置都能运行 service nginx start 可选 start | stop | restart | reload | status | help

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值