Heim > Backend-Entwicklung > PHP-Tutorial > Verwenden Sie NodeJS anstelle von Nginx als Reverse-Proxy

Verwenden Sie NodeJS anstelle von Nginx als Reverse-Proxy

WBOY
Freigeben: 2016-07-29 09:13:10
Original
1220 Leute haben es durchsucht
var http = <strong>require</strong>('http'), httpProxy = <strong>require</strong>('http-proxy');
 
// 新建一个代理 Proxy Server 对象
var proxy = httpProxy.createProxyServer({});
 
// 捕获异常
proxy.on('error', function (err, req, res) {
 res.writeHead(500, {
 'Content-Type': 'text/plain'
 });
 res.end('Something went wrong. And we are reporting a custom error message.');
});
 
// 另外新建一个 HTTP 80 端口的服务器,也就是常规 Node 创建 HTTP 服务器的方法。
// 在每次请求中,调用 proxy.web(req, res config) 方法进行请求分发Create your custom server and just call `proxy.web()` to proxy
// a web request to the target passed in the options
// also you can use `proxy.ws()` to proxy a websockets request
//
var server = <strong>require</strong>('http').createServer(function(req, res) {
 // You can define here your custom logic to handle the request
 // and then proxy the request.
 //var host = req.url;
 //host = url.parse(host); host = host.host;
  
 console.log("host:" + req.headers.host);
 console.log("client ip:" + (req.headers['x-forwarded-for'] || req.connection.remoteAddress));
  
 proxy.web(req, res, { target: 'http://localhost:9080',xfwd : 'true' });
});
 
console.log("listening on port 80")
server.listen(80);
Nach dem Login kopieren

Das Obige stellt die Verwendung von NodeJS anstelle von Nginx als Reverse-Proxy vor, einschließlich der erforderlichen Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage