首页 > 系统相关 >nginx配置文件服务器及反向代理

nginx配置文件服务器及反向代理

时间:2023-11-28 15:23:07浏览次数:40  
标签:配置文件 xxx 代理 代理服务器 nginx proxy timeout 服务器

nginx 配置文件服务器及反向代理

最终配置如下:

worker_processes  1;
events {
    worker_connections  1024;
}

http{
    server {
        listen      8888;
        add_header 'Access-Control-Allow-Origin' '*';
        server_name  example.com;

        location / {
            return 404;
        }

        location /file/ {
            alias   D:/xxx/xxx/;
            allow all;
            autoindex on;
            charset utf-8;
        }

        location /logs/ {
            alias   C:/xxx/xxx/;
            allow all;
            autoindex on;
            charset utf-8;
        }

        location /api/test1/ {
            proxy_connect_timeout 10s;
            proxy_read_timeout 1800s;

            proxy_pass http://localhost:10024;
            proxy_set_header Host $host:$server_port;
        }
    }
}

搭建文件服务器

其中下面的配置即是提供文件服务的:

location /file/ {
	alias   D:/xxx/xxx/;
	allow all;
	autoindex on;
	charset utf-8;
}

location /logs/ {
	alias   C:/xxx/xxx/;
	allow all;
	autoindex on;
	charset utf-8;
}

可以通过访问部署nginx服务器的ip加上8888端口, 加载uri:/file/或者/logs/即可访问文件目录进行下载。假如nginx所在服务器ip为192.168.0.1, 那么就是访问地址: http://192.168.0.1:8888/file/ 或者 http://192.168.0.1:8888/logs/ 即可访问到对应目录下的文件。
其中指定 autoindex用于显示目录, charset指定字符编码, 否则下载文本文件可能乱码。

跨域问题

跨域的配置主要是这一句:

add_header 'Access-Control-Allow-Origin' '*';

反向代理

首先, 什么是反向代理?反向代理其实是相对正向代理而言的,那正向代理是什么呢?
正向代理打个比方就是,我们要访问google.com, 但是无法直接访问,但某个代理服务器A是可以访问到google.com, 而我们又可以访问到代理服务器A, 那么此时代理服务器A即是充当代理服务器的角色。
那反向代理呢?反向代理就好比我们访问baidu.com, 但是baidu.com所指示的服务是一个代理服务器, 具体做事的可能是其某个内部节点, 可能是多个节点。

配置反向代理关键配置如下:

location /api/test1/ {
	proxy_connect_timeout 10s;
	proxy_read_timeout 1800s;

	proxy_pass http://localhost:10024;
	proxy_set_header Host $host:$server_port;
}
  • proxy_connect_timeout 设置代理服务器与后端服务器建立连接的超时时间,单位为秒
  • proxy_read_timeout 设置代理服务器从后端服务器读取数据的超时时间,单位为秒
  • proxy_send_timeout 设置代理服务器向后端服务器发送数据的超时时间,单位为秒
  • proxy_pass 指定了实际被代理的服务器地址
  • proxy_set_header 用于重新定义或者添加发往后端服务器的请求头, 示例中是重新设置了header中的Host字段。

其他超时设置

  • client_body_timeout 设置客户端向服务器发送请求体的超时时间,单位为秒
  • client_header_timeout 设置客户端向服务器发送请求头的超时时间,单位为秒
  • send_timeout 设置服务器向客户端发送响应的超时时间,单位为秒
  • keepalive_timeout 设置服务器与客户端之间保持连接的超时时间,单位为秒

标签:配置文件,xxx,代理,代理服务器,nginx,proxy,timeout,服务器
From: https://www.cnblogs.com/quenwaz/p/17862038.html

相关文章

  • 配置Oracle链接服务器使用分布式事务​
    1现象在SQLServer中创建指向Oracle的链接服务器,SQL语句在事务中向链接服务器插入数据。返回链接服务器无法启动分布式事务的报错。2解决在Windows平台下,SQLServer依赖分布式事务协调器(MSDTC)来使用分布式事务,OracleClient使用OracleServicesforMicrosoftTransactionServer......
  • .gitignore配置文件
    #######################################################################BuildTools.gradle/build/!gradle/wrapper/gradle-wrapper.jartarget/!.mvn/wrapper/maven-wrapper.jar#######################################################################IDE......
  • Linux服务器上查询进程 ps aux
    在Linux服务器上查询进程,有以下几种方法:使用ps命令。这个命令用于报告当前系统的进程状态。可以用以下方式使用ps命令来查看进程信息:psaux:显示系统中所有进程的信息。ps-e:显示所有进程的信息。ps-f:显示进程的所有信息。ps-l:以长格式显示进程信息。ps-r:只显示正在运......
  • linux服务器主机巡检:
    脚本:[root@mongodbfiles]#catxuncheck.sh#!/bin/bash#获取服务器基本信息hostname=$(hostname)ip_address=$(hostname-I|awk'{print$1}')os=$(lsb_release-ds)kernel=$(uname-r)uptime=$(uptime-p)#监控循环whiletrue;do#获取CPU信息cpu_model=$(cat/p......
  • 服务器数据库A的备份恢复到服务器B后出现问题解决
    消息10314,级别16,状态11,第2行尝试加载程序集ID65536时,Microsoft.NETFramework出错。服务器可能资源不足,或者程序集可能不受信任,PERMISSION_SET=EXTERNAL_ACCESS或UNSAFE。如上错误提示,解决办法: alterdatabasedatabasenamesettrustworthyon还有更改数据库......
  • js获取nginx服务器时间
    前端页面js获取nginx服务器时间在实际开发中,我们通常要使用的是服务器端的时间,而不是本机电脑的时间,在js文件中直接通过newDate()获取的时间是本机电脑的系统时间,获取服务器时间的方法如下:1.修改nginx的配置文件nginx.conf,在对应服务器端口的server路径下直接添加如下代码:loca......
  • 本地Linux 服务器实现内网穿透,SSH远程连接
     公网SSH远程连接Linux的好处在于可以在任何地方通过互联网连接到Linux服务器,无需在服务器所在的局域网内。这样可以方便地进行远程管理、维护和操作,提高了工作效率和灵活性。同时,公网SSH连接还可以加强服务器的安全性,因为可以通过SSH协议进行加密通信,保护数据的安全性。下面简......
  • 本地Linux 服务器实现公网SSH远程连接
     公网SSH远程连接Linux的好处在于可以在任何地方通过互联网连接到Linux服务器,无需在服务器所在的局域网内。这样可以方便地进行远程管理、维护和操作,提高了工作效率和灵活性。同时,公网SSH连接还可以加强服务器的安全性,因为可以通过SSH协议进行加密通信,保护数据的安全性。下面简......
  • 百战商城项目---第11章 文件服务器 FastDFS 搭建
    1简介FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。FastDFS为互联网量身定制,充分考虑了冗余备份......
  • 基于Ubuntu系统Nginx的两种安装方式
    一、直接apt安装**如果本机安装了nginx,卸载nginxapt-get--purgeautoremovenginx检查本机是否还有nginx程序在后台运行,如果有直接kill掉。ps-ef|grepnginx1、默认版本安装方便简单,很多依赖都自动给安装好了,一个命令即可:apt-getupdateapt-getinstallnginx......