Question

J'ai Vernis installé avec le réglage par défaut sur mon serveur web Apache.Apache inscription sur le port 8080 et le Vernis de la liste à 80.

J'ai quelques fichiers téléchargeables sur le site avec la taille de 100 mo, 500 mo et 1 GO

Les 1 go ne fonctionne pas, lorsque vous cliquez sur, il va dire à la page indisponible ou connexion fermée par le serveur.Les deux autres fonctionnent très bien, mais je ne suis pas sûr si ce est la bonne façon de les télécharger.

Comment puis-je faire des vernis de s'affranchir de ces fichiers et de les obtenir directement à partir du serveur web?

Je vous remercie.

Était-ce utile?

La solution

Cela pourrait être fait avec la vérification de l' Content-Length dans le backend réponse, et si c'est plus gros que certains la taille, étiquette avec la marque et restart demande de transaction

Exemple, des fichiers dont le Contenu de Longueur >=10,000,00 doit être envoyé:

sub vcl_fetch {
..
  if ( beresp.http.Content-Length ~ "[0-9]{8,}" ) {
     set req.http.x-pipe-mark = "1";
     return(restart);
  }
..
}

Puis nous sommes rentrés à la vérification de la réception de la demande et de l'analyse.Ici, nous pouvons vérifier notre marque et d'effectuer pipe

sub vcl_recv {
..
  if (req.http.x-pipe-mark && req.restarts > 0) {
    return(pipe);
  }
..
}

Autres conseils

In varnish 4, vcl_fetch should be replaced with vcl_backend_response, see https://www.varnish-cache.org/docs/trunk/whats-new/upgrade-4.0.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top