nginx反向代理初识
Nginx 是什么?
Nginx 是一个高性能的 HTTP 和反向代理服务器,处理高并发能力十分强大,能经受高负
载的考验,有报告表明它能支持高达 50,000 个并发连接数。
Nginx能做什么?
由于Nginx的特性,它经常有如下的使用场景:正向代理、反向代理、负载均衡、动静分离、高可用集群
代理是什么?
代理:类似于我们需要买房子,房产中介就是代理
正向代理:我们需要访问谷歌浏览器,就需要借助于VPN,VPN就是将我们请求的地址正向代理成美国地址,当然就可以访问谷歌浏览器了
反向代理:我们将请求发送到反向代理服务器上,由反向代理服务器去选择目标服务器再返回给我们,此时反向代理服务器和目标服务器对外是同一个,但真实服务器的地址是被隐藏的
反向代理和正向代理的区别就是:正向代理代理客户端,反向代理代理服务器。
CentOS如何安装Nginx?
1 yum安装nginx非常简单,就输入一条指令即可【多输入会选择源码包安装,繁琐但性能好】:
sudo yum -y install nginx # 安装nginx sudo yum remove nginx # 卸载nginx
使用yum进行nginx安装时,Nginx配置文件在/etc/nginx目录下。
2 启动nginx
service nginx start
3 免费申请HTTPS证书
通过如下链接:https://developer.aliyun.com/article/759071 免费申请HTTPS证书。【公司使用一般是确定域名,给到运维,由运维人员提供ssl证书】
4 配置Nginx
配置地址:/etc/nginx/conf.d/default.conf
具体内容参见如下:
#按照如下格式修改default.conf 配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问http的时候会自动跳转到https上面。
server { listen 80; server_name superset.test.com; rewrite ^(.*)$ https://${server_name}$1 permanent; #设置http自动转发https } server { listen 443; server_name superset.test.com; ssl on; ssl_certificate /etc/nginx/certs/8229843_superset.test.com.pem; #证书的文件名 ssl_certificate_key /etc/nginx/certs/8229843_superset.test.key; #证书的密钥文件名 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密套件,基本通用 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #配置协议 ssl_prefer_server_ciphers on; index index.php index.htm index.html; error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location / { proxy_pass http://172.201.18.182:8080; proxy_set_header Host $http_host; proxy_set_header Connection close; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
5 重启nginx
service nginx restart
6 访问测试
依次访问上面域名:
172.201.18.182:8080就可以替换成superset.test.com
7 域名备案
登录阿里云,点击右上角【备案】,按步骤完成备案即可
ps:自动启动Nginx
设置nginx 自动开机启动 :chkconfig --level 235 nginx on
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)