nginx で実行されている Wordpress マルチサイトのネットワークがあります。w3 total cache を使用してキャッシュを設定しようとしています。私は 99% 成功していますが、1 つのルールに固執しているだけです。
縮小されたcssおよびjsファイルをきれいなURLで書き換えるためのこの書き換えルールを指摘するいくつかの指示を見つけました。
# Rewrite minified CSS and JS files
location ~* \.(css|js) {
if (!-f $request_filename) {
rewrite ^/wp-content/w3tc/min/(.+\.(css|js))$ /wp-content/w3tc/min/index.php?file=$1 last;
}
}
マルチサイト環境で動作するように次のように変更しました。
rewrite ^/wp-content/w3tc-$host/min/(.+\.(css|js))$ /wp-content/w3tc-$host/min/index.php?file=$1 last;
$host
ただし、テストは変数を解釈せず、実際に文字列をテストすることがわかりました"$host"
。$host
テストで変数の値を実際に使用する方法はありますか? または、次のような一般的なルールを使用することをお勧めします。
rewrite ^/wp-content/w3tc-.*?/min/(.+\.(css|js))$ /wp-content/w3tc-$host/min/index.php?file=$1 last;
私はこれについてより良い提案を受け入れています - 正規表現は私にとって強みではありません。
そして最後に、別の答えを探している人のために:縮小設定で「URL 構造の書き換え」を無効にするだけで、縮小を機能させることができます。これは、縮小されたファイルのきれいな URL のためだけです。