您的位置:首页 > 运维架构 > Nginx

Linux下的Nginx安装(开机自启动)

2017-10-09 10:57 363 查看

转自http://blog.csdn.net/wangli61289/article/details/37821581

1.前提

1.在安装Nginx前,需要确保系统安装了g++,gcc, openssl-devel、pcre-devel和zlib-devel软件。安装必须软件:

[java] view
plain copy

 print?

yum  -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel  

2.Nginx安装

在centos下执行yum search nginx可以查看系统自带的Nginx,执行 yum install nginx可以快捷的安装Nginx。但由于系统自带的Nginx的版本太低,所以一般我们不这么安装。不过在我们执行yum install nginx可以看到Nginx依赖包。

2.1安装Nginx的依赖包

[java] view
plain copy

 print?

yum install GeoIP gd libXpm libxslt  

2.2 安装Nginx

从Nginx的官网(http://nginx.org/en/download.html)下载Nginx的最新版本,这里我们下载的是nginx-1.7.3。

1.上传我们刚下载的nginx的tar包到Linux服务器上,并将tar包移动到/usr/local目录下

[java] view
plain copy

 print?

mv nginx-1.7.3.tar.gz /usr/local  

2.解压安装

进入/usr/local目录下(cd /usr/local)解压Nginx的安装包

[java] view
plain copy

 print?

tar –zxv nginx-1.7.3.tar.gz  

3.Nginx配置

为了方便起见,将nginx-1.7.3重命名为nginx

[java] view
plain copy

 print?

cd nginx  

 ./configure  

 make  

 make install  

2.3验证

查看nginx安装路径(whereis nginx)并启动Nginx( /usr/local/nginx/sbin/nginx)

[java] view
plain copy

 print?

whereis nginx  

/usr/local/nginx/sbin/nginx  

在浏览器输入http://localhost看到nginx的欢迎页。

3.开机自动启动Nginx

这里使用的是编写shell脚本的方式来处理,vi /etc/init.d/nginx输入下面的代码

[java] view
plain copy

 print?

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

nginxd=/usr/local/nginx/sbin/nginx  

nginx_config=/usr/local/nginx/conf/nginx.conf  

nginx_pid=/var/run/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: "  

    #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  

:wq  保存并退出

设置文件的访问权限

chmod a+x /etc/init.d/nginx   (a+x ==> all user can execute  所有用户可执行) 

[java] view
plain copy

 print?

chmod a+x /etc/init.d/nginx   

这样在控制台就很容易的操作nginx了:查看Nginx当前状态、启动Nginx、停止Nginx、重启Nginx…

[java] view
plain copy

 print?

/etc/init.d/nginx status  

/etc/init.d/nginx start  

/etc/init.d/nginx stop  

/etc/init.d/nginx restart  

同样的修改了nginx的配置文件nginx.conf,也可以使用上面的命令重新加载新的配置文件并运行,可以将此命令加入到rc.local文件中,这样开机的时候nginx就默认启动了

vi /etc/rc.local

加入一行  /etc/init.d/nginx start    保存并退出,下次重启会生效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: