nginx Could not build the server_names_hash,server_names_hashbucketsize:32エラー
今日はinxにドメイン名を追加しました.inxを停止して再起動しました.結果は止まった時にinxがエラーを報告しました.
Could not build the server_names_hash,you shou shound increase server_names_hashbucketsize:32
inx.co nfファイルのhttpにserver_を追加または修正する.names_hashbucketsize 64;もっと大きいです
以下に公式文書のセグメントを参照します.http://nginx.org/cn/docs/http/server_names. :
-----------------------------
大量の名前が定義されていたり、非常に長い名前が定義されている場合は、http設定ブロックにserver_を使用する必要があります.names_hashmax_sizeとserver_names_hashbucketsize命令で調整します.server_names_hashbucketsizeのデフォルト値は32、または64、または他の値であり、CPUのキャッシュ行の長さに依存する.この値が32であるならば、仮想ホスト名として「
一つの傍受ポートのために一意のホストが構成されている場合、inxは仮想ホスト名を全くテストしない(傍受ポートのためのハッシュテーブルを確立することもない).ただし、例外的に定義された仮想ホスト名がTrapグループを含む正規表現である場合には、この表現を実行してTrapグループを得る必要があります.
Could not build the server_names_hash,you shou shound increase server_names_hashbucketsize:32
公式の助けを調べましたが、定義されている名前が長すぎて、黙認して32と大きく変えて、最後に2の倍数で増加しました.inx.co nfファイルのhttpにserver_を追加または修正する.names_hashbucketsize 64;もっと大きいです
以下に公式文書のセグメントを参照します.http://nginx.org/cn/docs/http/server_names. :
-----------------------------
大量の名前が定義されていたり、非常に長い名前が定義されている場合は、http設定ブロックにserver_を使用する必要があります.names_hashmax_sizeとserver_names_hashbucketsize命令で調整します.server_names_hashbucketsizeのデフォルト値は32、または64、または他の値であり、CPUのキャッシュ行の長さに依存する.この値が32であるならば、仮想ホスト名として「
too.long.server.name.example.org
」を定義することは失敗し、inxは以下のエラー情報を表示する.could not build the server_names_hash,
you should increase server_names_hash_bucket_size: 32
このような場合は、コマンドの値を倍に拡大する必要があります.http {
server_names_hash_bucket_size 64;
...
大量の名前を定義したら、他のエラーがあります.could not build the server_names_hash,
you should increase either server_names_hash_max_size: 512
or server_names_hash_bucket_size: 32
まずserver_を設定してみるべきです.names_hashmax_sizeの値は名前リストの名前の合計にほぼ等しいです.まだ問題が解決できない場合や、サーバーの起動が非常に遅い場合は、Server_を向上させてみます.names_hashbucketsizeの値一つの傍受ポートのために一意のホストが構成されている場合、inxは仮想ホスト名を全くテストしない(傍受ポートのためのハッシュテーブルを確立することもない).ただし、例外的に定義された仮想ホスト名がTrapグループを含む正規表現である場合には、この表現を実行してTrapグループを得る必要があります.