ngx_pagespeedモジュールをダウンロードしようとしているので、Nginxをソースからコンパイルできます。最新の安定バージョンのngx_pagespeedモジュールを手動でダウンロードする場合
私はUbuntu 16.04を使用しています。
私は、だから私は、最初にそこにはtrickinessをUbuntuの依存関係をインストールしないする必要がありhttps://www.modpagespeed.com/doc/build_ngx_pagespeed_from_source
からの命令を使用しています。
sudo apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip uuid-dev
依存関係をインストールしたら、「ビルド手順」セクションに進みます。これは私が完全に捨てられたところです。ここに私が解読できないコードがあります。
NPS_VERSION=1.12.34.2-stable
cd
wget
https://github.com/pagespeed/ngx_pagespeed/archive/v${NPS_VERSION}.zip
unzip v${NPS_VERSION}.zip
cd ngx_pagespeed-${NPS_VERSION}/
NPS_RELEASE_NUMBER=${NPS_VERSION/beta/}
NPS_RELEASE_NUMBER=${NPS_VERSION/stable/}
psol_url=https://dl.google.com/dl/page-speed/psol/${NPS_RELEASE_NUMBER}.tar.gz
[ -e scripts/format_binary_url.sh ] && psol_url=$(scripts/format_binary_url.sh PSOL_BINARY_URL)
wget ${psol_url}
tar -xzvf $(basename ${psol_url}) # extracts to psol/
最初の質問 - これらの2つの行は私には不安があります。
NPS_RELEASE_NUMBER=${NPS_VERSION/beta/}
NPS_RELEASE_NUMBER=${NPS_VERSION/stable/}
私はバッシュエキスパートではありませんが、2番目の行は最初の行を否定しませんか?最初の行で "NPS_VERSION = 1.12.34.2-stable"が指定されている場合、これらの行に両方の行が含まれるのはなぜですか?
2番目の質問、私は "NPS_RELEASE_NUMBER = $ {NPS_VERSION /ベータ/}" のラインの実行を停止し、その後
echo "$NPS_RELEASE_NUMBER"
を実行する場合、それは奇妙な、 "1.12.34.2安定"
OKを返します。 。それは変数 "NPS_VERSION"をエコーしているようですが、変数 "NPS_RELEASE_NUMBER"の "NPS_VERSION"に付加されている部分文字列 "/ beta /"を完全に無視しています。
は、だから私は "NPS_RELEASE_NUMBER = $ {NPS_VERSION /安定/}"
エコー再び変数が、それが返されます。この時、 "1.12.34.2-" に設定します。真剣に、ここで何が起こっているのですか?
編集:私は、ドキュメントに深刻な問題があると考え始めています。私はそれが私のことだと思っていましたが、変数 "NPS_RELEASE_NUMBER"がこのような奇妙な結果を返すという事実は、私がここで何か他のことが起こっていると信じさせています。
何が起こっていたのかを説明する時間をとってくれてありがとう。変数の終わりから "安定"または "ベータ"を取り除くために文字列置換を使用しているのを見ていないと、私は今や馬鹿げていると感じています。 –