配置nginx转发,需求是保存本地后再转发,不印象本地接受
时间: 2023-10-15 22:08:31 浏览: 78
配置好的用nginx进行端口转发服务(windows 自启动服务)
1. 首先在nginx配置文件中添加以下内容:
```
http {
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_buffering off;
proxy_request_buffering off;
proxy_http_version 1.1;
chunked_transfer_encoding off;
}
}
}
```
2. 然后在本地启动一个服务,例如使用Node.js开发的一个HTTP服务器,监听8080端口,代码如下:
```
var http = require('http');
var fs = require('fs');
http.createServer(function (request, response) {
var filePath = '.' + request.url;
if (filePath == './') {
filePath = './index.html';
}
fs.readFile(filePath, function (error, content) {
if (error) {
response.writeHead(404, { 'Content-Type': 'text/html' });
response.end('<h1>404 Not Found</h1>');
} else {
response.writeHead(200, { 'Content-Type': 'text/html' });
response.end(content, 'utf-8');
}
});
}).listen(8080);
```
3. 当访问http://example.com时,nginx会将请求转发到本地的8080端口,Node.js的HTTP服务器会接收到请求并返回一个HTML页面。在Node.js的代码中,可以使用fs模块读取本地文件并返回给客户端,从而实现了保存本地后再转发的需求。
阅读全文