ubuntu12.04 源码安装nginx

来源:互联网 发布:ims数据怎么读取 编辑:程序博客网 时间:2024/05/16 08:11

1、安装前准备

     安装以下软件依赖包,不然编译时会出错

   sudo apt-get install libpcre3-dev   //需要pcre库
     sudo apt-get install libssl-dev      //需要openssl库

       从http://nginx.org/download/ 下载最新的稳定版源码包nginx-1.2.6.tar.gz。不建议使用开发版,开发版刚发布不久,bug会比较多。开发版一旦更新稳定下来,就会被加入稳定版分支。

2、开始编译

         tar zxvf nginx-1.2.6.tar.gz

      cd  nginx-1.2.6

      ./configure

      make

      sudo make install

         其中configure是编译时的编译选项文件,可进行自定义配置。可通过./configure --help命令查看nginx可选择的编译选项

           例如:--prefix=<path>  nginx安装路径。如果没有指定,默认为/usr/local/nginx。

       执行完成后,如果没有错误,就说明nginx已经安装成功,总体上来说,nginx的安装还是比较简单快速的,只要编译所需的安装依赖库都已安装,在源码编译安装的过程中基本不会出现错误。

3、nginx的启动、停止、平滑重启

    3.1  启动命令是:sudo  /usr/local/nginx/sbin/nginx   -c   /usr/local/nginx/conf/nginx.conf 

    说明:/usr/local/nginx是安装时所选的安装路径;参数-c指定了配置文件的路径,如果不加-c参数,nginx会默认加载其安装目录中的conf子目录中的nginx.conf文件。

    3.2  nginx的停止

     nginx的停止一般是通过发送系统信号给nginx主进程的方式来停止nginx。

   通过ps -ef  | grep nginx  找到nginx的进程号(其中nginx标记为master prcocess的进程)。

   如果在nginx.conf文件中指定了pid文件的存放路径(如:pid  /usr/local/webserver/nginx/logs/nginx.pid),该文件存放的是nginx当前的主进程号,如果没有指定pid存放路径,默认存放在nginx安装路径的logs目录下。通过下列命令停止nginx:

     kill  -  信号类型   pid存放路径/nginx.pid       或者       kill   -  信号类型   nginx主进程号    或者    pkill  -9 nginx  (强制停止所有nginx进程)

   说明:信号类型有一下几种,

       (1)QUIT(表示从容停止nginx),TERM和INT(都表示快速停止nginx)。

        (2) HUP  平滑重启nginx,重新加载配置文件。(平滑表示在不停止当前服务的情况下可以启用新配置的文件信息)

     当修改来配置文件后,可通过一下命令判断配置文件是否正确:

        sudo  /usr/local/nginx/sbin/nginx  -t  -c   /usr/local/nginx/conf/nginx.conf 

     如果错误,则输出【emerg】:unknown directive “abc” 。。。。。等错误信息

    如果正确,则输出  the configure file 。。。syntax  is  OK,此时就可以重启nginx。

    (3)USER2  用于平滑升级nginx,在不停止服务的情况下升级服务器。

     在升级的过程中,新旧版本的nginx主进程会同时运行,共同处理请求,要逐步停止旧版本的nginx服务,必须发送WINCH信号给旧的主进程。当升级后可以自己决定使用新版本服务器还是旧版本服务器,升级成功后,可以将旧的nginx停止,如果不成功,则发信号给新的nginx进程,停止新nginx的运行。

  至此,nginx就已经完全安装成功可以运行了,自己可以按照需要来配置nginx服务器的性能。


  



原创粉丝点击