diff --git a/lib/http-proxy/passes/web-incoming.js b/lib/http-proxy/passes/web-incoming.js
index 7ae735514190eea569c605fff7d27c045fe8d601..ee693a0eb81be39179fd9b209601b3e15b93f4c9 100644
--- a/lib/http-proxy/passes/web-incoming.js
+++ b/lib/http-proxy/passes/web-incoming.js
@@ -129,9 +129,7 @@ module.exports = {
 
     // Enable developers to modify the proxyReq before headers are sent
     proxyReq.on('socket', function(socket) {
-      if(server && !proxyReq.getHeader('expect')) {
-        server.emit('proxyReq', proxyReq, req, res, options);
-      }
+      if(server && !proxyReq.agent && !proxyReq.getHeader('expect')) { server.emit('proxyReq', proxyReq, req, res, options); }
     });
 
     // allow outgoing socket to timeout so that we could
@@ -189,6 +187,7 @@ module.exports = {
         if (server) server.emit('end', req, res, proxyRes);
       }
     });
+    if(server && proxyReq.agent) { server.emit('proxyReq', proxyReq, req, res, options); }
   }
 
 };