151 votes

comment supprimer X-Powered-By dans ExpressJS

Je veux supprimer X-Powered-By pour la sécurité,enregistrer la bande passante dans ExpressJS(node.js). comment faire ? il pourrait être filtre(app.use) ?

app.use(function(req,res,next_cb){ /* remove X-Powered-By header */ next_cb(); }

317voto

ahcox Points 1781

Ne le supprimez pas ; demandez à Express de ne pas le générer en premier lieu :

https://stackoverflow.com/a/12484642/506073

Accédez à votre app.js et juste après :

var app = express();

Ajouter :

app.disable('x-powered-by');

229voto

alessioalex Points 27001

La meilleure façon de le faire est :

app.disable('x-powered-by');

Vous pouvez également créer un intergiciel pour supprimer n'importe quel en-tête comme ceci :

app.use(function (req, res, next) {
  res.removeHeader("X-Powered-By");
  next();
});

Voir plus d'informations sur la façon de supprimer un en-tête :

http://nodejs.org/api/http.html#http_response_removeheader_name

8voto

cayuu Points 1563

Extrait de middleware de : Impossible de se débarrasser de l'en-tête X-Powered-By :Express

function customHeaders( req, res, next ){
  // Switch off the default 'X-Powered-By: Express' header
  app.disable( 'x-powered-by' );

  // OR set your own header here
  res.setHeader( 'X-Powered-By', 'Awesome App v0.0.1' );

  // .. other headers here

  next();
}

app.use( customHeaders );

// ... now your code goes here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X