查看当前系统版本是否支持
当前,nginx发布包支持以下Linux操作系统版本:
RHEL/CentOS:
Version Supported Platforms 5.x x86_64, i386 6.x x86_64, i386 7.x x86_64, ppc64le
Debian:
Version Codename Supported Platforms 7.x wheezy x86_64, i386 8.x jessie x86_64, i386
Ubuntu:
Version Codename Supported Platforms 12.04 precise x86_64, i386 14.04 trusty x86_64, i386, aarch64/arm64 16.04 xenial x86_64, i386, ppc64el
SLES:
Version Supported Platforms 12 x86_64
我们可以在命令行输入命令"cat /etc/issue" 或 "cat /etc/os-release" 查看当前操作系统版本,如下所示:
[root@localhost local]# cat /etc/os-release NAME="Red Hat Enterprise Linux Server"VERSION="7.0 (Maipo)"ID="rhel"ID_LIKE="fedora"VERSION_ID="7.0"PRETTY_NAME="Red Hat Enterprise Linux Server 7.0 (Maipo)"ANSI_COLOR="0;31"CPE_NAME="cpe:/o:redhat:enterprise_linux:7.0:GA:server"HOME_URL="https://www.redhat.com/"BUG_REPORT_URL="https://bugzilla.redhat.com/"REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7"REDHAT_BUGZILLA_PRODUCT_VERSION=7.0REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"REDHAT_SUPPORT_PRODUCT_VERSION=7.0
可见,操作系统属于RHEL7.X,符合要求。
下载
可以输入wget http://nginx.org/download/nginx-1.10.2.tar.gz 命令直接从网上获取资源包,也可以自己下载。
我这里直接从官网下载nginx-1.10.2.tar.gz包,并放到/usr/local目录下;
输入tar -zxvf nginx-1.10.2.tar.gz命令解压。
配置
进入解压后的目录:
cd /usr/local/nginx-1.10.2
开始配置,可以配置各种参数以及是否启用某些模块等,,详细配置参数可参考官网,有很详细的说明,
如下,是我的配置:
./configure --prefix=/usr/local/nginx-1.10.2 \ --conf-path=/etc/nginx/nginx.conf \ --with-http_ssl_module \ --with-http_realip_module \ --with-http_addition_module \ --with-http_sub_module \ --with-http_dav_module \ --with-http_flv_module \ --with-http_mp4_module \ --with-http_gunzip_module \ --with-http_gzip_static_module \ --with-http_random_index_module \ --with-http_secure_link_module \ --with-http_stub_status_module \ --with-http_auth_request_module \ --with-threads \ --with-stream \ --with-stream_ssl_module \ --with-http_slice_module \ --with-mail \ --with-mail_ssl_module \ --with-file-aio \ --with-http_v2_module \ --with-ipv6
编译
输入以下命令即可:
make && make install
启动服务
进入sbin目录,输入nginx命令即可,另外重启命令是nginx -s reload
验证服务是否启动
查看进程即可,如下是我的nginx服务进程
root 20646 1 0 11:04 ? 00:00:00 nginx: master process nginxnobody 20647 20646 0 11:04 ? 00:00:00 nginx: worker process
遇到的问题
1、checking for C compiler ... not found
未安装gcc,安装即可。
2、"conf/koi-win" 与"/usr/local/nginx/conf/koi-win" 为同一文件”
配置的时候,指定--conf-path参数的配置即可。
3、nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
端口被占用了,修改端口号即可。我这里是有个tomcat的端口配置为80,改成其它的即可。