ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

day14.2

2022-06-14 15:32:26  阅读:175  来源: 互联网

标签:day14.2 ## 代理服务器 nginx proxy web01 root


day14.2

nginx代理

# 正向代理
网络代理(代理客户端访问外网)

# 反向代理
用于公司集群架构,代理服务端

正向代理和反向代理的区别

1.区别在于形式上服务的对象不一样
2.正向代理代理的对象是客户端,为客户端服务
3.反向代理代理的对象是服务端,为服务端服务

为什么学代理

nginx代理PHP服务
1.代理后端语言的服务(PHP、Java、Python)
2.国外服务器代理国内服务器,方便国外用户上网

反向代理使用的模块

反向代理模块总结

反向代理模式 nginx配置模块
http、websocket、HTTPS ngx_http_proxy_module
fastcgi ngx_http_fastcgi_module
uwsgi ngx_http_uwsgi_module
grpc ngx_http_v2_module

环境准备

主机名 wanip lanip 角色 应用
web01 10.0.0.7 172.16.1.7 web网站 nginx、PHP
ib01 10.0.0.5 172.16.1.5 反向代理服务器 nginx
db01 10.0.0.51 172.16.1.51 数据库 mariadb

安装LNMP环境

# 1.yum下载下来的所有rpm结尾的包
[root@web01 ~]# find /var/cache/yum/ -type f -name '*.rpm'

# 2.开启yum缓存
[root@web01 wc]# vim /etc/yum.conf
keepcache=1

# 3.添加nginx源
[root@web01 ~]# vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

# 4.添加PHP源
[root@web01 ~]# vim /etc/yum.repos.d/php.repo
[php-webtatic]
name = PHP Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64/
gpgcheck = 0

# 5.安装PHP和nginx
[root@web01 ~]# yum -y install php71w php71w-cli php71w-common php71w-devel php71wembedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm
php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-peclmongodb nginx

# 6.将所有的rpm包拷贝到opt目录下
[root@web01 ~]# find /var/cache/yum/ -type f -name '*.rpm'|xargs cp -t /opt/

# 7.进入opt目录下打包
root@web01 ~]# cd /opt/
[root@web01 opt]# tar zcf nginx_php.tgz *.rpm

# 8.安装
[root@web02 nginx_php]# rpm -Uvh *.rpm
[root@web02 nginx_php]# yum localinstall -y *.rpm

安装数据库

# 1.安装数据库
[root@db01 ~]# yum install -y mariadb-server

# 2.启动MariaDB并加入开机自启
[root@db01 ~]# systemctl start mariadb
[root@db01 ~]# systemctl enable mariadb

# 3.设置数据库的管理用户 root 初始密码
[root@db01 ~]# mysqladmin -uroot -p password '123'
Enter password: ## root默认没有密码,直接回车

# 4.连接数据库
[root@db01 ~]# mysql -uroot -p123

# 5.创建wordpress数据库
MariaDB [(none)]> create database wordpress;
Query OK, 1 row affected (0.00 sec)

# 6.创建wecenter数据库
MariaDB [(none)]> create database wecenter;
Query OK, 1 row affected (0.00 sec)

# 7.创建wordpress程序连接数据库的用户
创建一个用户:
用户名:wordpress_user
密码:123
允许该用户连接的IP地址:172.16.1.0/24网段
针对wordpress库下面的所有表,有所有权限
MariaDB [(none)]> grant all on wordpress.* to wordpress_user@'172.16.1.%' identifiedby '123';

# 8.创建wecenter程序连接数据库的用户
MariaDB [(none)]> grant all on wecenter.* to wecenter_user@'172.16.1.%' identified by
'123';

nginx做代理服务器(Ib01)

# 1.安装nginx
[root@lb01 ~]# yum install -y nginx

# 2.添加nginx源
[root@lb01 ~]# vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

#  3.添加nginx代理配置文件
[root@lb01 ~]# vim /etc/nginx/conf.d/blog.wc.conf

server{
        listen 80;
        server_name blog.wc.com;

        location /{
                 proxy_pass http://172.16.1.7:80;
}
}

# 4.启动nginx并加入开机自启
[root@lb01 ~]# systemctl start nginx
[root@lb01 ~]# systemctl enable nginx

# 5.域名解析
10.0.0.5 blog.wc.com

代理配置优化

# 优化好的配置文件
[root@lb01 ~]# vim /etc/nginx/conf.d/blog.wc.conf

server{
        listen 80;
        server_name blog.wc.com;

        location /{
                proxy_pass http://172.16.1.7:80;
                ## 在代理服务器的请求头中,加上域名,携带域名去访问后端的web01服务器
                proxy_set_header Host $host;
                ## 在代理服务器的请求头中,透传用户的真实IP地址给web01
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                ## lb01连接web01的超时时间(代理服务器,连接后端服务的超时时间)
                proxy_connect_timeout 60s;
                ## lb01代理服务器读取web01返回的数据超时时间(代理后端的服务器响应代理服务器的超时
                时间)
                proxy_read_timeout 60s;
                ## 后端服务器回传给代理服务器数据的超时时间
                proxy_send_timeout 60s;
                ## 开启代理服务器的缓冲区,代理服务器接收到web01返回的数据,接收一条,返回给用户一
                条
                proxy_buffering on;
                ## 开启存放头部信息的缓冲区大小为 32k
                proxy_buffer_size 32k;
                ## 开启4个128k的存放数据主体的缓冲区
                proxy_buffers 4 128k;

}

# 避免配置文件重复使用
[root@lb01 ~]# vim /etc/nginx/proxy_params

## 在代理服务器的请求头中,加上域名,携带域名去访问后端的web01服务器
proxy_set_header Host $host;
## 在代理服务器的请求头中,透传用户的真实IP地址给web01
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
## lb01连接web01的超时时间(代理服务器,连接后端服务的超时时间)
proxy_connect_timeout 60s;
## lb01代理服务器读取web01返回的数据超时时间(代理后端的服务器响应代理时间)
proxy_read_timeout 60s;
## 后端服务器回传给代理服务器数据的超时时间
proxy_send_timeout 60s;
## 开启代理服务器的缓冲区,代理服务器接收到web01返回的数据,接收一条,返回给用户一条
proxy_buffering on;
## 开启存放头部信息的缓冲区大小为 32k
proxy_buffer_size 32k;
## 开启4个128k的存放数据主体的缓冲区
proxy_buffers 4 128k;

标签:day14.2,##,代理服务器,nginx,proxy,web01,root
来源: https://www.cnblogs.com/wangchengww/p/16374846.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有