nginx+php+fastcgiでwordpressを動かしてみた

December 5, 2011,
tags: fastcgi nginx php wordpress


このエントリーをはてなブックマークに追加

VPSサーバをさくらに変えたのでwebサーバをapacheからnginxに変えてみました。
nginx使ってみたいなーとか思っていましたが、なかなか使う機会も無かったので、よい練習になるかなと思い入れてみました。

主に「さくらVPS(CentOS)でnginxとPHPをいれてみた」を参考にしていれさせていただきました。

ただし、今回はバーチャルホスト使って運用したかったのでnginxの設定をnginx.confではなく、conf.d/virtual.confに記述しています。

また、パーマリンクが反映されないのでnginxの設定を書き換える必要があります。
というか、.htaccessが使えないんですw

そこらへんは「nginx で WordPress のパーマリンク設定を使用する」を参考にさせて頂きました。

一応設定した内容を晒しておきますので、参考にしたければ参考にしてください。

vim /etc/nginx/conf.d/virtual.conf

server {
    listen       80; 
    server_name  www.polidog.jp;
    
    #エラーログ設定
    access_log /var/log/nginx/www_access.log;
    error_log  /var/log/nginx/www_error.log;


    location / { 
        root   /var/www/blog/wordpress/;
        index  index.php index.html index.htm;

        if (-f $request_filename){ 
            expires 30d;
            break;
        }   

        #パーマリンク設定
        if (!-e $request_filename) {
            rewrite ^.+?(/wp-.*) $1 last;
            rewrite ^.+?(/.*\.php)$ $1 last;
            rewrite ^ /index.php last;
        }   
    }   

    #phpの設定
    location ~\.php$ {
        root /var/www/blog/wordpress/;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/blog/wordpress/$fastcgi_script_name;
        include        fastcgi_params;

    }   

    #画像とかxmlとかswfに関する設定
    location ~* ^.+.(jpg|jpeg|gif|png|css|js|flv|swf|ico|xml)$ {
        access_log  off;
        expires 30d;
        root /var/www/blog/wordpress/;
    }
}

なのでこのように書き換えました。

comments powered by Disqus