今日の人気記事

  1. ssh - リモートマシンにSSHでログイン - Linuxコマンド
  2. ファイルの解凍・圧縮 - Linuxコマンド一覧(.zip .gz .Z .bz2 tar.gz .tgz tar.Z .taz .tar.bz2 .tbz2)
  3. ssh-keygen - 認証用の鍵を生成 - Linuxコマンド
  4. SSHのポート番号を変更 - SSHサーバーの設定
  5. cd - 作業ディレクトリを移動 - Linuxコマンド

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”の対処方法」は終了です。

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