前言
Nginx是一款用C语言编写的HTTP服务器,它有很多功能,详见Nginx入门。由于官方给的Nginx安装文件不是安装包,而是Nginx的源码文件,所以Nginx的安装和多数运行在Linux上的软件的安装方式不同,需要使用C语言进行编译生成二进制文件
Nginx安装
1.准备安装环境
需要使用yum安装以下几个库和插件
gcc
由于Nginx是现场编译出来的,所以需要安装C语言编译器,Linux系统中常用gcc
yum install gcc-c++
PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式
yum install -y pcre pcre-devel
zlib
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip
yum install -y zlib zlib-devel
openssl
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库
yum install -y openssl openssl-devel
2.上传安装包
从Nginx的官网下载Nginx官网安装包并上传,然后解压
安装包文件根目录的内容如下,其中Makefile文件是之后添加的,并不是解压后就有的
3.创建Makefile文件
使用如下命令,其中–prefix参数设置文件的安装目录,这个可以自由设置,我把Nginx安装到了/usr/local/application/nginx路径指向的文件中,其他的参数不要更改
./configure \
--prefix=/usr/local/application/nginx(Nginx的安装目录)\
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
运行完上述命令后,在安装包的根目录下创建一个多级文件夹,运行命令:
mkdir /var/temp/nginx/client -p
4.编译文件
还是在安装包的根目录下,运行如下两个命令:
make
make install
若控制台最后打印出如上内容,说明编译成功,Nginx安装完成
5.启动Nginx
进入Nginx根目录(不是安装文件的根目录),根目录中文件如下
运行命令:
./nginx
打开浏览器访问Nginx,Nginx的默认端口是80端口,看到如下界面表示Nginx成功运行
Nginx常用命令
Nginx开启命令:
./nginx
Nginx关闭命令:
./nginx -s stop
./nginx -s quit
重新加载Nginx配置文件:
./nginx -s reload