1.Nginx的安装

 

1. Nginx

Nginx是一种高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

2. nginx安装(Windows)

2.1 下载压缩包

http://nginx.org/en/download.html

2.2 解压

2.3 启动Nginx

  1. 双击nginx.exe

  2. cmd窗口输入nginx.exe

  3. cmd窗口输入start nginx

2.4 验证

  1. 在浏览器窗口输入http://localhost:80

即表示成功

cmd验证方法:

1
tasklist /fi "imagename eq nginx.exe"

查询得到即表示成功

3. nginx安装(Linux)

3.1 安装依赖软件包

1.gcc

安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc

1
yum install gcc-c++

2.PCRE

PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。

1
yum install pcre pcre-devel

3.zlib

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。

1
yum install zlib zlib-devel

4.openssl

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。

1
yum install openssl openssl-devel

3.2 下载nginx安装包

1
2
3
[root@localhost download]# pwd
/usr/local/download
[root@localhost download]# wget http://nginx.org/download/nginx-1.18.0.tar.gz

3.3 解压

1
2
3
4
5
[root@localhost download]# pwd
/usr/local/download
[root@localhost download]# ls
nginx-1.18.0.tar.gz
[root@localhost download]# tar -zxvf nginx-1.18.0.tar.gz -C /usr/local/src/

3.4 进入解压后的nginx目录

1
[root@localhost download]# cd /usr/local/src/nginx-1.18.0/

3.5 配置

创建nginx的安装目录

1
[root@localhost download]# mkdir /usr/local/nginx-1.18.0
1
2
3
4
[root@localhost download]# cd /usr/local/src/nginx-1.18.0/
[root@localhost nginx-1.18.0]# pwd
/usr/local/src/nginx-1.18.0
[root@localhost nginx-1.18.0]# ./configure --prefix=/usr/local/nginx-1.18.0/ --with-http_stub_status_module --with-http_ssl_module

3.6 编译

1
2
3
[root@localhost nginx-1.18.0]# pwd
/usr/local/src/nginx-1.18.0
[root@localhost nginx-1.18.0]# make

3.7 编译安装

1
2
3
[root@localhost nginx-1.18.0]# pwd
/usr/local/src/nginx-1.18.0
[root@localhost nginx-1.18.0]# make install

nginx安装在/usr/local/nginx-1.18.0/

3.8 检查Nginx是否安装成功

1
// ### 3.8 检查nginx.conf文件,查看nginx.conf文件是否有语法错误

进入nginx安装目录/usr/local/nginx-1.18.0/:

1
2
3
4
5
6
[root@localhost nginx-1.18.0]# cd /usr/local/nginx-1.18.0/sbin/
[root@localhost sbin]# ls
nginx
[root@localhost sbin]# ./nginx -t
nginx: the configuration file /usr/local/nginx-1.18.0//conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx-1.18.0//conf/nginx.conf test is successful

出现以下信息即为安装成功。

1
2
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

3.9 nginx命令

启动Nginx:

1
2
3
[root@localhost sbin]# pwd
/usr/local/nginx-1.18.0/sbin
[root@localhost sbin]# ./nginx

停止 Nginx:

1
2
3
[root@localhost sbin]# pwd
/usr/local/nginx-1.18.0/sbin
[root@localhost sbin]# nginx -s stop

重启 Nginx:

1
2
3
[root@localhost sbin]# pwd
/usr/local/nginx-1.18.0/sbin
[root@localhost sbin]# nginx -s reopen

重新载入配置文件:

1
2
3
[root@localhost sbin]# pwd
/usr/local/nginx-1.18.0/sbin
[root@localhost sbin]# ./nginx -s reload

3.10 验证Nginx安装

查看进程:

1
2
3
4
[root@localhost sbin]# ps -ef | grep nginx
root 4619 1 0 10:08 ? 00:00:00 nginx: master process ./nginx
nobody 4620 4619 0 10:08 ? 00:00:00 nginx: worker process
root 4627 1740 0 10:10 pts/0 00:00:00 grep --color=auto nginx

在浏览器窗口输入http://192.168.168.130:80

即表示成功

3.11 Nginx的目录说明

1
2
3
4
5
6
[root@localhost nginx-1.18.0]# ls -l
total 4
drwxr-xr-x. 2 root root 4096 Jan 4 10:05 conf
drwxr-xr-x. 2 root root 40 Jan 4 10:05 html
drwxr-xr-x. 2 root root 58 Jan 4 10:13 logs
drwxr-xr-x. 2 root root 19 Jan 4 10:05 sbin
1
2
3
4
conf: 配置目录 
html: 静态文件[cdn加速]
logs: 日志目录
sbin: 执行文件

当Nginx启动之后,还会生成其他目录

1
2
3
4
5
6
7
8
9
10
11
[root@localhost nginx-1.18.0]# ls -l
total 4
drwx------. 2 nobody root 6 Jan 4 10:06 client_body_temp
drwxr-xr-x. 2 root root 4096 Jan 4 10:05 conf
drwx------. 2 nobody root 6 Jan 4 10:06 fastcgi_temp
drwxr-xr-x. 2 root root 40 Jan 4 10:05 html
drwxr-xr-x. 2 root root 58 Jan 4 10:13 logs
drwx------. 2 nobody root 6 Jan 4 10:06 proxy_temp
drwxr-xr-x. 2 root root 19 Jan 4 10:05 sbin
drwx------. 2 nobody root 6 Jan 4 10:06 scgi_temp
drwx------. 2 nobody root 6 Jan 4 10:06 uwsgi_temp