diff --git a/lib/shutdown.js b/lib/shutdown.js
index 308349ca6f652b045db2f293a6d669d74f69cabb..7cc3a2c3704ca892d88b9940d30e9626949a0e72 100644
--- a/lib/shutdown.js
+++ b/lib/shutdown.js
@@ -111,9 +111,15 @@ exports.handleTerminationSignals = function(app, callback) {
   process.on('SIGINT', endIt('INT')).on('SIGTERM', endIt('TERM')).on('SIGQUIT', endIt('QUIT'));
 };
 
+const CODE_UPDATE_URL = '/code_update';
+
 exports.installUpdateHandler = function(app, callback) {
   var terminate = connectionListener(app);
-  app.get('/code_update', function(req, resp, next) {
+  app.get(CODE_UPDATE_URL, function(req, resp, next) {
+    // don't allow an imprecise match (like one with a trailing slash) to shut the server down.
+    // bug #699171
+    if (req.url !== CODE_UPDATE_URL) return next();
+
     logger.warn("code updated.  closing " + app.connections + " connections and shutting down.");
     terminate(callback);
   });