さくらVPS:Nginxの設定

ドメインとった。
なので、Nginx のバーチャルホストの設定をする。ホスト名が www.lathercraft.net なので、etc/nginx/conf.d/www.lathercraft.net.conf というファイルを新規に作る。

[root@www2465uo takatoh]# vim /etc/nginx/conf.d/www.lathercraft.net.conf

参考サイトを見ながら次のようにした。

server {
    # port
    listen 80;

    # server name
    server_name www.lathercraft.net;

    # document root
    root /ver/www/html;

    # index
    index index.php index.html index.htm;

    # log files
    access_log /var/log/nginx/www.lathercraft.net/access.log main;
    error_log /var/log/nginx/www.lathercraft.net/error.log warn;

    # php-fpm
    location ~\.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

ログファイル用のディレクトリを作る。

[root@www2465uo takatoh]# mkdir /var/log/nginx/www.lathercraft.net
[root@www2465uo takatoh]# chown nginx /var/log/nginx/www.lathercraft.net

Nginx を再起動。

[root@www2465uo takatoh]# /etc/init.d/nginx restart
nginx を停止中:                                            [  OK  ]
nginx を起動中:                                            [  OK  ]

さて、これで Nginx の設定は終了。

最後に PHP がうまく動くかテストしてみる。

[root@www2465uo takatoh]# cd /var/www/html
[root@www2465uo html]# echo '<?php echo phpinfo(); ?>' > info.php

これで、http://www.lathercraft.net/info.php にアクセスすると、PHP のインフォメーションが出るはず。

php-file-not-found

あれ、ダメだ。なんでだろう?

ググって調べた結果、↓このサイトの通りに変更したらうまくいった。

 cf. nginx + php-fpm で設定したが index.php にアクセスするとNOT FOUND(404)になってしまう – saba nano – へっぽこ管理者のサーバ管理日誌(LV.2)

具体的には、/etc/nginx/conf.d/www.lathercraft.net.conf に1行追加した。

server {
    # port
    listen 80;

    # server name
    server_name www.lathercraft.net;

    # document root
    root /ver/www/html;

    # index
    index index.php index.html index.htm;

    # log files
    access_log /var/log/nginx/www.lathercraft.net/access.log main;
    error_log /var/log/nginx/www.lathercraft.net/error.log warn;

    # php-fpm
    location ~\.php$ {
        root /var/www/html;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

これで再度アクセスしてみると:

php-success

OK。今度はうまくいった。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください