今日の人気記事

  1. chown - ファイルの所有者やグループを変更 - Linuxコマンド
  2. export - 環境変数を定義・リスト表示する - Linuxコマンド
  3. ssh - リモートマシンにSSHでログイン - Linuxコマンド
  4. ファイルの解凍・圧縮 - Linuxコマンド一覧(.zip .gz .Z .bz2 tar.gz .tgz tar.Z .taz .tar.bz2 .tbz2)
  5. コマンドの実行結果・標準出力をファイルに保存

nginxのエラー“increase server_names_hash_bucket_size”の対処方法

スポンサーリンク

nginx起動時のエラー“increase server_names_hash_bucket_size”の対処方法を説明します。

エラーの対処方法

nginxの設定ファイルにバーチャルホスト(同じIPアドレスで複数のサイトを運用)を設定し、構文チェックをすると下記のようなエラーが表示される場合があります。

# /etc/init.d/nginx configtest
nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
nginx: configuration file /etc/nginx/nginx.conf test failed

これはバーチャルホストのドメイン名が長い時に表示されるエラーで、nginxの設定ファイル(/etc/nginx/nginx.conf)を編集すればOKです。

# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.old
# vi /etc/nginx/nginx.conf
server_names_hash_bucket_size 64; ← 32から64に増やします

diffコマンドで比較

適切に編集できているかを確認するためにdiffコマンドで比較します。

# diff /etc/nginx/nginx.conf.old /etc/nginx/nginx.conf
23c23
< 	server_names_hash_bucket_size 32;
---
> 	server_names_hash_bucket_size 64;

設定ファイルが適切に編集されているを確認します。上記設定でもエラーが表示される場合は、値を128に変更して下さい。

# /etc/init.d/nginx configtest
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

nginxを起動します。

# /etc/init.d/nginx start
nginx を起動中:                                            [  OK  ]

以上で、「nginxのエラー“increase server_names_hash_bucket_size”の対処方法」は終了です。

関連記事(一部広告含む)