お世話になります。
nginx + PHP-FPM + CentOS + Wordpress + レスポンシブデザインでWebサイトを構築しています。
キャッシュ機能を利用したく、以下のサイトを参考に設定を行いました。
http://server-setting.info/centos/nginx-fastcgi-cache.html
http://server-setting.info/centos/nginx-cache-mobile.html
結果、PC用の表示はキャッシュできたのですが、スマホからアクセスした際もPC用の表示となってしまいます(基本レスポンシブなのですが、細かな部分でPC/スマホを分けているため、同じ表示では不都合がございます)。
実際には、最初のURL中のコード、93~121行目(切り分けをすると、114~116行目っぽい)を入れると、スマホからのアクセスが404になってしまい、外すとスマホからもPC用が表示される状態です。
1:スマホからのアクセスはキャッシュを別にしたい
2:難しければ、スマホからのアクセスはキャッシュを表示させないようにしたい
をしたいのですが、何か有用な方法はありますでしょうか。
※WP Super Cacheを利用し、Mobile Device Supportをオフにしても同じでした。
何卒よろしくお願い致します。
1) fastcgi なら、設定は簡単なはずです
設定ファイルで、タイプミスなどをしていませんか?
一度、デフォルトの設定ファイルに戻して、必要最低限の設定だけを行ってみると、見落としに気がつくかもしれません。
2) 古いキャッシュが残っていませんか?
一度、キャッシュを全部消しましょう。
手順は別エントリにかいてあるようです
http://server-setting.info/centos/nginx-cache-remove2.html
3) 実際に正しくキャッシュファイルが生成されているか確認しましょう
http://server-setting.info/centos/nginx-cache-mobile.html
の後半に、キャッシュが保存されるディレクトリ名を調べる方法が書いてあります
この手順でディレクトリ名を調べて、実際にキャッシュファイルが期待通りのディレクトリに正しく生成されているか確認した方が良いとおもいます
1) fastcgi なら、設定は簡単なはずです
設定ファイルで、タイプミスなどをしていませんか?
一度、デフォルトの設定ファイルに戻して、必要最低限の設定だけを行ってみると、見落としに気がつくかもしれません。
2) 古いキャッシュが残っていませんか?
一度、キャッシュを全部消しましょう。
手順は別エントリにかいてあるようです
http://server-setting.info/centos/nginx-cache-remove2.html
3) 実際に正しくキャッシュファイルが生成されているか確認しましょう
http://server-setting.info/centos/nginx-cache-mobile.html
の後半に、キャッシュが保存されるディレクトリ名を調べる方法が書いてあります
この手順でディレクトリ名を調べて、実際にキャッシュファイルが期待通りのディレクトリに正しく生成されているか確認した方が良いとおもいます
どのように実際の定義をされているのかがわかりませんが、
http://server-setting.info/centos/nginx-fastcgi-cache.html
こちらをベースにすると
set $mobilef '';
77行目の次あたりに入れる
if (...) { set $mobilef 'mobile.'; }
93行目以降の -- mobile ? とか -- Kei-tai ? と書かれている適切な位置に set $do_not_cache 1; の代わりに入れる。
fastcgi_cache_key "$mobilef$scheme://$host$request_uri";
129行目を置き換える。
というような感じになるはずです。
定義を確認してみてください。
alfa-gadget様
2015/06/26 14:33:19ご回答頂きありがとうございます。
ご指摘頂いた、
set $mobilef 'mobile.';
と
fastcgi_cache_key "$mobilef$scheme://$host$request_uri";
につきましては、質問内に掲載した2つ目のURL(http://server-setting.info/centos/nginx-cache-mobile.html)内に記載があり、すでにそのように設定をしております。
ご回答につき、私が読み違えていたら誠に申し訳ございません。
伝わらないでしょうか。
2015/06/28 11:55:03ふたつのURLでそれぞれ書かれていることを、どのように組み合わせて定義しているのでしょうか。
順番に並べただけではだめです。