·软件知识库 ·模板素材库
注册 | 登录

您所在的位置: INDEX > html > nginx反向代理、https协议、和80重定向443端口

nginx反向代理、https协议、和80重定向443端口

许杰 Sun Jul 05 12:01:51 CST 2015 字号:

系统版本:Ubuntu 20.04 64位
一、安装nginx
1、安装nginx命令

sudo  apt-get install nginx

2、 查看nginx的版本和已安装的服务模块

nginx -V

3、启动nginx,默认是没有启动的。

systemctl start nginx

4、使用apt安装的nginx,默认配置文件位于:/etc/nginx/nginx.conf

二、配置反向代理,并使用https
1、编辑/etc/nginx/nginx.conf文件

http {
#反向代理
server {
#   监听端口443   即当访问服务器的端口是443时,进入这个server块处理
        listen       443;    
        server_name  ****.com;    #你需要访问的域名
        ssl on;    #这个一定开启,否则安全认证会报错
        ssl_certificate /etc/nginx/cert/***.pem;    #ssl证书文件
        ssl_certificate_key /etc/nginx/cert/***.key;    ####ssl证书文件
        proxy_set_header Host $host:$server_port;  #隐藏客户的ip

# location后面代表访问路径 当是/ 请求时 代理到GPT的地址
        location / {
# 使用 proxy_pass(固定写法)后面跟要代理服务器地址            
            proxy_pass http://***.com;  # 反向代理到这个地址
                
            chunked_transfer_encoding off;  # 禁用分块编码传输,避免可能的代理问题
            proxy_buffering off;  # 禁用代理缓存,避免数据传输延迟
            proxy_cache off;  # 禁用代理缓存,确保实时获取最新的数据
            tcp_nopush on;  # 开启TCP NOPUSH选项,禁止Nagle算法
            tcp_nodelay on;  # 开启TCP NODELAY选项,禁止延迟ACK算法
            keepalive_timeout 300;  # 设定keep-alive超时时间为65秒

            #proxy_set_header X-Forwarded-For $remote_addr;  # 将客户端真实IP添加到代理请求头中的X-Forwarded-For字段中,用于记录客户端真实IP

        }
}

2、开启访问80端口时,重定向到443

http {
server {
        listen       443;
        }
}

#监听端口80 即当访问服务器的端口是80时,进入这个server块处理,并将80跳转到443
  server {      #这里这个server一定是在http外部,单独一个分块,
      listen 80;
      server_name chatgpt.conn.link; #这里修改成自己的域名
  
     #核心代码
      rewrite ^(.*)$ https://${server_name}$1 permanent;
  }

3、最后重启nginx,现在访问https://.com 和访问http://.com
都会自动跳转到https://***.com



『相关搜索』
版本信息:kms v1.3 鄂ICP备2023004815号-1 51LA统计