簡単!5分でnginx1.05をCentOS5.6にインストールする方法(ソースコードをコンパイル)


nginxというと何だか難しそうに聞こえますが、インストールは意外と簡単です。
設定ファイルもシンプルなので、Apacheが苦手な人こそ挑戦してみてはいかがでしょうか?

nginxのコンパイル&インストール手順

CentOS 5.6でrootログインして作業します。

# yum -y install pcre-devel openssl-devel             # 事前にライブラリを入れる
# wget "http://nginx.org/download/nginx-1.0.5.tar.gz" # ソースコードを取得
# tar xfz nginx-1.0.5.tar.gz    # 解凍
# cd nginx-1.0.5             
# ./configure
# make && make install          # コンパイル&インストール
# /usr/local/nginx/sbin/nginx   # 起動してみる
# ps aux | grep nginx           # 起動確認。下記のようにプロセスがあればOK
root      4369  0.0  0.0  19100   732 ?        Ss   13:50   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody    4370  0.0  0.0  19496  1172 ?        S    13:50   0:00 nginx: worker process

# /usr/local/nginx/sbin/nginx -s quit # 停止
# ps aux | grep nginx                  # 停止確認。nginxのプロセスがなければOK

# wget -O /etc/init.d/nginx "http://dqn.sakusakutto.jp/files/nginx1.05.txt" # 起動スクリプトを取得(※)
# chmod 0755 /etc/init.d/nginx  # 実行権限を付与
# /etc/init.d/nginx start       # 起動確認
Starting nginx:     [  OK  ]

(ここでブラウザからサーバにアクセスして、" Welcom to nginx "の画面が出ればOKです。)

# /etc/init.d/nginx stop        # 停止確認
Stopping nginx:     [  OK  ]

(以下、自動起動の設定をする)
# chkconfig --add nginx
# chkconfig nginx on
# chkconfig --list nginx
nginx           0:off   1:off   2:on    3:on    4:on    5:on    6:off
↑ 2,3,4が on になっていればOK

# /etc/init.d/nginx start        # 起動
# echo "hello my nginx" >  /usr/local/nginx/html/index.html  # 画面を書き換えてみる

(ブラウザからアクセスして、"hello my nginx"が表示されたらOK)
これで完了です!

nginx-welcome.png
うまくいきましたか?
(私はAmazon EC2のLargeインスタンスでやったら4分16秒でいけました。)

(※ ↓起動スクリプトをそのまま使う場合はよく確認してください。ご利用は自己責任でお願いします。)
http://dqn.sakusakutto.jp/files/nginx1.05.txt

設定ファイルをいじって変更してみよう

コンテンツの場所がデフォルトだと "/usr/local/nginx/html/" になっていて何かと不便です。
設定ファイルをいじって変更してみましょう。
# nano /usr/local/nginx/conf/nginx.conf   # 設定ファイルを編集する
44行目あたり、 "root" のパスを変更する。
    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   /var/www;
            index  index.html index.htm;
        }
変更したらコンテンツを置いてみて、nginxを再起動します。
# mkdir /var/www
# echo "foo bar" > /var/www/index.html
# /etc/init.d/nginx restart
ブラウザでアクセスして、"foo bar" の画面が出たらOKです!
カテゴリ: