複数のドメインのhttpトラフィックを提供するnginxを実行している単一のマシンがあります(同じLuaコードベースを使用)。一部のドメインでは、gzip圧縮を有効にしたいです。特定のドメインセットに対してgzip圧縮を有効にすることは可能ですか?どうやって?
絶対に documentation を見ると、次のレベルhttp, server, location, if in location
のいずれかにgzip
を配置することが許容され、ドメインはで定義されていることがわかります。 server_name
を使用してserver
レベルgzipを横に配置できます。
まず、nginx.conf
ファイルでgzip on;
が存在するかどうかを確認し、存在する場合は削除します。
次に、confファイルを作成し、gzipを使用する場所を定義する必要があります。
server {
server_name www.myexample.com;
listen 80;
gzip off;
}
server {
server_name www.myotherexample.com;
listen 80;
gzip on;
}
はい、そうです。ホスト名ごとにサーバーブロックが必要です。
gzip on;
または
gzip off;
各サーバーブロック内。 ドキュメントはここにあります 。唯一の問題は、ある種のワイルドカードを使用した場合、またはドメインごとにサーバーブロックがない場合です。
例えば
server {
server_name www.example.com;
listen 80;
root /what/ever;
gzip on;
}
server {
server_name www.example2.com;
listen 80;
root /what/ever2;
gzip off;
}
これが意味をなさない場合は、nginx構成ファイルとサイトファイルを投稿してください。確認できます。