Nginx 反向代理

1、业务场景

内网服务器无法通过外网访问到时,这时候需要一台跳板机来实现

2、概念介绍

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

  • Nginx使用基于事件驱动架构,使得其可以支持数以百万级别的TCP连接
  • 高度的模块化和自由软件许可证使得第三方模块层出不穷(开源)
  • Nginx是一个跨平台服务器,可以运行在Linux,Windows,FreeBSD,Solaris,AIX,Mac OS等操作系统上
  • 稳定性极高

3、自测 Demo

3.1、配置域名

3.2、申请并配置证书

  • 腾讯云申请 CA 免费证书
  • 下载符合对应使用场景的 CA 证书
  • 将 CA 证书上传至 Nginx 服务器安装目录底下
  • 确保 Nginx 已安装 OpenSSL 与 SSL_MOUDLE
  • 在配置文件中配置 https 的访问路径、反向代理URL、证书
  • 声明:此只是代理了此 URL 并非整个网站

4、带入业务场景实现 Demo

4.1、前置条件

  • 域名、CA证书、服务器两台
  • 简易网站(能够实现几个界面的跳转交互就可以)、Mysql

4.2、实现流程

  • 域名、CA证书的配置请参考自测Demo
  • 快速搭建简易网站,搭建方法可参考文末的资料

  • 配置 Nginx 反向代理文件信息

  • 访问目标地址

  • 跳转界面其他地址

5、总结

  • Nginx 实现反向代理整站时需要考虑安全问题(申请CA证书)
  • proxy_pass 需要填写目标服务器的地址,而非是具体某个路径
  • 重新学习了一下 Nginx、Http 协议结构,仍然需要继续学习,Nginx 并非这么简单

6、参考资料

Nginx介绍

https://cloud.tencent.com/developer/article/1594836

配置 ngxin 快速启动
https://www.cnblogs.com/wang-yaz/p/11350013.html
安装 SSL 报错
https://blog.csdn.net/DengZY926/article/details/120948398
location URL 正则表达式
https://blog.csdn.net/weixin_44299027/article/details/107286956
MYSQL 密码忘记修改密码
https://blog.csdn.net/Miss__xxzz/article/details/127226468
MYSQL 启动失败
https://blog.csdn.net/hjf161105/article/details/78850658
proxy_pass 后面的url 加/与不加/的区别
https://www.jianshu.com/p/2f88cbc5bcf1
Nginx配置文件详解
https://blog.csdn.net/qq_42177284/article/details/114855422

安装和配置 Discuz

https://www.php.cn/cms/discuz/466551.html

posted @ 2022-11-06 15:01  生活是很好玩的  阅读(972)  评论(0编辑  收藏  举报