2010-08-24 4 views
3

Je suis en charge une application héritée sur ColdFusion 7, et les pages sont pleines de quantités douloureuses d'espaces que je voudrais gzip away.Comment activer la compression gzip sur une coldfusion au niveau du répertoire?

Je sais que je peux:

  • compriment manuellement tout dans un fichier de type d'index (reference)
  • activer dans le web.xml (que je n'ai pas accès à)

Mais est-ce que je peux juste lancer le bon < cfheader> ou quelque chose comme un .htaccess qui déclenche gzipping sur ce répertoire?

+0

Apparemment, PHP a une commande pour ce genre de chose: ob_start ('ob_gzhandler'); Toujours dans mon cas spécifique, l'application semble être hébergée sur Apache 1.3 sans GZIP activé, donc cela pourrait être un point discutable. – Dave

Répondre

6

Il existe deux façons d'implémenter la compression. Au niveau du serveur Web (Apache 1.3 avec mod_gzip ou mod_deflate, IIS_6, IIS_7) ou le niveau du serveur d'application (coldfusion via un servlet filter). J'ai peur que ce soit les seules options disponibles pour la compression.

Sinon, vous serez à la recherche à un ou plusieurs de ces derniers:

  • permettant la suppression des espaces par l'administrateur cf.
  • en utilisant < cfsetting enablecfoutputonly = "true"/> où est possible.
  • Code d'emballage avec < cfprocessingdirective suppressWhiteSpace = "yes" > </cfprocessingdirective >
  • Code d'emballage avec <cfsilent> </cfsilent >
1

La seule fois que j'ai vu CF gérer GZIP lui-même, IIRC, est lors de l'utilisation du serveur web interne (pas pour la production). J'ai toujours vu la compression gérée au niveau du serveur Web (IIS ou Apache).

Si un code spécifique est en train de déverser de grandes quantités d'espaces, il existe un certain nombre d'options pour le traiter. Plusieurs sont ébauchés dans un article by Ray Camden.

Personnellement, je ne m'inquiète pas trop des espaces sauf si c'est vraiment mauvais. J'éteins la sortie dans les CFC (si quelque chose doit être affiché, je la renvoie), et j'utilise des blocs CFSilent autour de blocs de code qui ne devraient pas afficher de sortie quand même.

Questions connexes