1、安装GCC、automake、pcre、zlib和openssl
yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl openssl-devel
查看安装命令:
//查看openssl
rpm -qa openssl
//查看zlib
rpm -qa zlib
//查看pcre
rpm -qa pcre
2、下载nginx及代理模块
下载nginx
//进入opt文件夹
cd /usr/local/src
//下载Nginx服务器文件,版本可以根据自己更换
wget http://nginx.org/download/nginx-1.18.0.tar.gz
//解压文件
tar -xvf nginx-1.18.0.tar.gz
自己通过宝塔等方式上传或解压都行
下载ngx_http_proxy_connect_module模块
安装git,已经安装无需重复安装
yum install git
下载插件项目
git clone https://gitee.com/web_design_of_web_frontend/ngx_http_proxy_connect_module.git
3、安装
- 进入解压文件夹
cd /usr/local/src/nginx-1.18.0
- 配置configure脚本
patch -p1 < /usr/local/src/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite_1018.patch
./configure --add-module=/usr/local/src/ngx_http_proxy_connect_module
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/usr/local/src/ngx_http_proxy_connect_module
# --with为安装模块
# http_stub_status_module: Nginx的客户端状态
# http_ssl_module: ssl模块
# ngx_http_proxy_connect_module: 代理模块
- 执行make指令进行源代码编译,编译完成后,执行make的install命令安装Nginx服务器
make && make install
4、加入环境变量
vim /etc/profile
# 按i,在最后一行添加
export PATH=$PATH:/usr/local/nginx/sbin
# 修改完成后按 Esc 后 输入:wq!回车
# 重新加载配置
source /etc/profile
5、启动nginx并修改配置
- 配置nginx开机启动
# 创建文件
vim /etc/init.d/nginx
按i,插入内容
nginx="/usr/local/nginx/sbin/nginx" # 修改成nginx执行程序的路径。
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" # 修改成nginx.conf文件的路径。
# 修改完成后按 Esc 后 输入:wq!回车
# 添加执行权限
chmod a+x /etc/init.d/nginx
# 通过下面指令控制启动停止
/etc/init.d/nginx start
/etc/init.d/nginx stop
- 修改conf配置文件
# 创建文件夹
mkdir /usr/local/nginx/vhost
修改总配置文件
vim /usr/local/nginx/conf/nginx.conf
# 按i,在server前添加,如下图
include /usr/local/nginx/vhost/*.conf;
# 修改完成后按 Esc 后 输入:wq!回车
# 创建其他配置文件
cd /usr/local/nginx/vhost
vim test.conf
# 按i,输入
server {
listen 80;
server_name localhost; #需要访问的地址
proxy_connect; #启用 CONNECT HTTP方法
proxy_connect_allow 443 80; #指定代理CONNECT方法可以连接的端口号或范围的列表
proxy_connect_connect_timeout 20s; #定义客户端与代理服务器建立连接的超时时间
proxy_connect_read_timeout 20s; #定义客户端从代理服务器读取响应的超时时间
proxy_connect_send_timeout 20s; #设置客户端将请求传输到代理服务器的超时时间
location ~ {
proxy_pass http://127.0.0.1:5001;
}
}
# 修改完成后按 Esc 后 输入:wq!回车
# 测试配置是否有问题
nginx -t
# 重启nginx,使得配置生效
/usr/local/nginx/sbin/nginx # 启动
/usr/local/nginx/sbin/nginx -s stop # 关闭
/usr/local/nginx/sbin/nginx -s reload # 重启