安装

wget -c http://nginx.org/download/nginx-1.4.7.tar.gz
tar -zxvf nginx-1.4.7.tar.gz
cd nginx-1.4.7
./configure --user=qun --group=qun --prefix=/usr/local/nginx1.4 --with-http_stub_status_module --with-http_ssl_module
make
make install
ln -s /usr/local/nginx1.4 /usr/local/nginx
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx

参数说明

参数 说明
--prefix=<path> Nginx安装路径。如果没有指定,默认为 /usr/local/nginx
--user=<user> 在nginx.conf中没有指定user指令的情况下,默认的nginx使用的用户。如果没有指定,默认为 nobody
--group=<group> 在nginx.conf中没有指定user指令的情况下,默认的nginx使用的组。如果没有指定,默认为 nobody
--with-http_stub_status_module 是为了启用 nginx 的 NginxStatus 功能,用来监控 nginx 的当前状态
--with-http_ssl_module 启用http_ssl模块,这个模块需要已经安装了OPENSSL
--conf-path=<path> 在没有给定-c选项下默认的nginx.conf的路径。如果没有指定,默认为<prefix>/conf/nginx.conf
--error-log-path=<path> 在nginx.conf中没有指定error_log指令的情况下,默认的错误日志的路径。如果没有指定,默认为 <prefix>/logs/error.log
--http-log-path=<path> 在nginx.conf中没有指定access_log指令的情况下,默认的访问日志的路径。如果没有指定,默认为 <prefix>/logs/access.log

执行命令

启动nginx:

/usr/local/nginx/sbin/nginx

重新加载nginx配置

sudo killall -HUP nginx
/usr/local/nginx/sbin/nginx -s reload

停止服务

killall -TERM nginx > /dev/null
/usr/local/nginx/sbin/nginx -s stop 

检查nginx服务是否启动

ps -ef | grep nginx
netstat -nap|grep :80

nginx 配置文件测试

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

安装常见问题

  1. 执行configure时出现:./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre开发包

yum install -y pcre-devel
  1. 执行configure时出现:./configure: error: the HTTP gzip module requires the zlib library.

添加gzip压缩模块

yum -y install zlib zlib-devel
  1. 执行configure时出现:./configure: error: C compiler cc is not found

安装gcc,如果安装出现在下面的错误是缺少编译环境。安装编译源码所需的工具和库

yum install gcc gcc-c++ ncurses-devel perl
  1. 安装出现bash: make: command not found,表示系统没有安装make、vim等常用命令

直接yum安装下即可

yum -y install gcc automake autoconf libtool make
  1. 安装出现:需要ssl功能需要openssl库
yum -y install openssl
yum -y install openssl-devel

参考链接