Nginx安装及使用


一、Nginx的安装网址

安装网址

二、windows下安装

1、启动方式一

直接打开nginx.exe

2、启动方式二

使用cmd命令到该目录下,输入命令nginx.exe

3、运行成功画面

成功画面

4、配置监听

nginx的配置文件在conf目录下的nginx.conf,默认配置的端口号为80

配置监听
当我们修改了nginx.conf时,不需要关闭后再重启,可以直接输入命令nginx -s reload即可

5、关闭nginx的两种方式

由于直接关闭cmd窗口是不能起到关闭效果,可使用两种方法关闭nginx。

(1)输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)

(2)使用taskkill taskkill /f /t /im nginx.exe

Window

三、Linux下安装

OpenSSL 安装

yum install -y openssl openssl-devel

使用默认配置,在nginx根目录下执行

./configure
make
make install

Nginx常用命令

cd /usr/local/nginx/sbin/
./nginx  启动
./nginx -s stop  停止
./nginx -s quit  安全退出
./nginx -s reload  重新加载配置文件
ps aux|grep nginx  查看nginx进程

四、后端负载均衡策略和反向代理实战

1、编辑conf/nginx.conf

weight权重越高被访问的几率越大

# 打开配置文件
vim /usr/local/nginx/conf/nginx.conf

#user  nobody;
worker_processes  2;


worker_rlimit_nofile 65535;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
	worker_connections  20480;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

	sendfile 		on;
	#tcp_nopush     on;

	keepalive_timeout  65;

	upstream one_server  {
        server localhost:8088 weight=1; #weight代表权重分配
        server localhost:8089 weight=2;
	}

	client_max_body_size 500m;

	#负载均衡
	server {
		listen       8087;
		server_name localhost;
		
		location / {
			proxy_set_header Host $host;
			proxy_pass http://one_server;
		}
	}

	#反向代理
	server {
		listen       9090;
		server_name localhost;

		#charset koi8-r;

		#access_log  logs/host.access.log  main;

        location / {
            root   html/my-ServiceName; #本地方法名字
            index  index.html index.htm;
        }

		location ^~/api/ {        
			rewrite ^/(.*)$ /$1 break;        
			proxy_set_header   Host             $host;        
			proxy_set_header   x-forwarded-for  $remote_addr;        
			proxy_set_header   X-Real-IP        $remote_addr;        
			proxy_pass http://127.0.0.1:9091;
		}
	}
}

2、代码

/**
 * @author lichangyuan
 * @create 2021-09-25 21:07
 */
@RestController
public class SuccessController {
    private static String serverPort;
    @Value("${server.port}")
    private String port;

    @PostConstruct
    public void setServerPort() {
        this.serverPort = port;
    }

    @RequestMapping("/succeess")
    public String success() {
        String IP = null;
        try {
            IP = InetAddress.getLocalHost().getHostAddress();
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }

        return "http://" + IP + ":" + SuccessController.serverPort;
    }
}

3、测试

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和烨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值