Webサーバーってみなさん、何使ってますか?
一時期はApache(アパッチ)を利用しているのがほとんどだったかと思いますが、近年ではNginx(エンジンエックス)を使っているサイトが多くなってきています。
簡単に言うと処理の違いがあり、大量アクセスをさばくには Apache < Nginxの方が向いている事が判明しNginxの利用者数が増えているといった感じですね。
そんなNginxですが、「server_name」という設定項目に複数の設定ができないか?調べてみました。
このブログは現役のエンジニア(プログラマー歴が約12年)の僕(よしたか)が2019年12月後半から日々更新しております。
もしもアフィリエイトは会員登録後も無料です!
今すぐ会員登録してアフィリエイトを始めよう!
エイリアス的な使い方でNginxのserver_nameは複数設定可能
例えばですが、
server {
server_name test1.com;
root /var/www/public;
・
・
・
}
server {
server_name test2.com;
root /var/www/public;
・
・
・
}
server {
server_name test3.com;
root /var/www/public;
・
・
・
}
こんな記述でも問題ないのですが、なんだかスマートじゃないですよね。
こんな時に「server_name」は複数設定できます。
server {
server_name test1.com test2.com test3.com;
root /var/www/public;
・
・
・
}
こうやって半角スペース区切りで複数指定出来ちゃいます。
また、
server {
server_name ~^test(1|2|3)\.com$;
root /var/www/public;
}
こんな感じで正規表現でも出来ちゃいます。
Nginxって結構柔軟な書き方ができますね。
どちらでもいいですが、視覚的には前者がいいでしょうね。
Nginxのserver_nameにはIPアドレスも指定可能
これって以外と知っている人は少ないかもしれませんが、「server_name」にはIPアドレスも指定できます。
server {
server_name test1.com test2.com test3.com 192.168.0.xx;
root /var/www/public;
・
・
・
}
こんな感じですね。
IPアドレス直打ちでもWebページを表示したい時なんかに便利ですね。(あんまりこのような使い方をする人はいないと思いますが…)
まとめ
いかがだったでしょうか。
僕はずっとApacheを利用してきましたが、最近ではNginxを使うプロジェクトも多くなってきています。
プログラマーにはNginxの記述方法の方が何かとわかりやすいのかな?とかも思いますが、この機会にNginxを使ってみてはどうでしょうか。
今日はさくっと以上となります!