一、安装Nginx
1、在Linux下安装Nginx可以使用yum命令,具体安装方法如下:
yum install nginx
2、安装完成后,可以使用命令systemctl status nginx
来查看Nginx的状态,如果显示已经运行并且没有错误,说明Nginx已经安装成功。
二、Nginx配置文件介绍
1、Nginx的配置文件一般位于/etc/nginx/nginx.conf
,打开此文件,可以看到配置文件中包含了许多指令。
2、Nginx的配置文件可以包含多个部分,可以通过include
指令来引入其他文件,例如:
include /etc/nginx/conf.d/*.conf;
3、Nginx的配置文件采用块级作用域,配置指令和参数直接用空格隔开,一个指令参数的结尾必须以分号结尾。
三、Nginx反向代理配置
1、Nginx可以作为反向代理服务器,将外部请求转发到内部的服务器上。 2、需要在配置文件中添加反向代理的配置,例如:
location / {
proxy_pass http://localhost:8000;
}
3、配置中的location
指令表示匹配所有的请求,proxy_pass
指令表示将请求转发到http://localhost:8000
服务器上。
四、Nginx负载均衡配置
1、Nginx可以作为负载均衡服务器,将请求分发到多个后端服务器上。 2、需要在配置文件中添加负载均衡的配置,例如:
upstream backend {
server localhost:8000;
server localhost:8001;
}
server {
location / {
proxy_pass http://backend;
}
}
3、配置中的upstream
指令表示定义了一个名为backend
的服务器集群,其中包含了两个后端服务器。而在server
块中的location
指令,使用proxy_pass
指令将请求转发到backend
集群中。
五、Nginx静态文件服务器配置
1、Nginx可以作为静态文件服务器,将静态文件直接返回给客户端。 2、需要在配置文件中添加静态文件服务器的配置,例如:
server {
listen 80;
server_name example.com;
location /static/ {
root /var/www/app;
}
}
3、配置中的listen
指令表示Nginx监听80端口,server_name
指令表示将请求转发到example.com
域名下,而location
指令则是将请求匹配/static/
路径后,返回/var/www/app
目录下的静态文件。
六、Nginx缓存配置
1、Nginx可以配置缓存来加速访问速度。 2、需要在配置文件中添加缓存的配置,例如:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;
server {
location / {
proxy_cache my_cache;
proxy_pass http://localhost:8000;
}
}
3、配置中的proxy_cache_path
指令定义了一个缓存区,levels
指定存储目录的层数,keys_zone
指定缓存区名称和大小。而在server
块中的location
指令,使用proxy_cache
指令开启缓存,将缓存区my_cache
指定为缓存区。
七、Nginx SSL配置
1、Nginx可以配置SSL证书,提供HTTPS服务。 2、需要在配置文件中添加SSL的配置,例如:
server {
listen 443;
server_name example.com;
ssl on;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:8000;
}
}
3、配置中的listen
指令表示Nginx监听443端口,server_name
指令表示将请求转发到example.com
域名下,ssl on
表示开启SSL服务,ssl_certificate
指令和ssl_certificate_key
指令分别指定SSL证书和私钥文件。
八、Nginx日志文件配置
1、Nginx可以记录访问日志、错误日志等,方便排查问题。 2、需要在配置文件中添加日志的配置,例如:
http {
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
}
3、配置中的access_log
指令和error_log
指令分别指定了访问日志文件和错误日志文件的路径。