さくらVPS:Nginx+PHPでWordPressを動かす(一応解決編)

前回は、インストールには成功したはずが、アクセスすると Not Found になってしまったところで終わった。一応解決したので、メモしておく。

参考になったページは次のとおり。

 cf. nginx – 404 not found page for permalinks [closed] – stackoverflow
 cf. nginxの設定ではまった事 – のぶろぐ

まずは1つ目の stackoverflow のページにあるとおり、Nginx の設定ファイル(/etc/nginx/conf.d/blog.lathercraft.net.conf)に、try_files 〜 という行を追加した。
これで、無事ページが表示されるようになったんだけど、スタイルが読み込まれていない、ただの html だけのような表示になってしまった。

で、2つ目のページにしたがって、静的なファイル(画像やCSS)を読み込む設定をしたら、うまくいった。

最終的に、設定ファイルはこうなった。

server {
    # port
    listen 80;

    # server name
    server_name blog.lathercraft.net;

    # document root
    root /ver/www/wordpress;

    # index
    index index.php;

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

    if (!-e $request_filename) {
        rewrite ^/(.+)# /index.php?q=$1 last;
        break;
    }

    try_files $uri $uri/ /index.php?q=$uri&$args;

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

    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico)$ {
        root /var/www/wordpress;
        access_log off;
        expires 30d;
    }

}

なんだかよくわからないけど、動いているので良しとする。

コメントを残す

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

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