.htaccessファイルにContent-Security-Policyヘッダーを設定しています。ヘッダーが非常に長くなり、管理が面倒です。この行をより扱いやすい部分文字列に分割する方法はありますか?
簡単な例として、ヘッダーを次のように設定するとします
Header set Content-Security-Policy "deafult-src http://domainA.com; script-src http://domainB.com"
私は(明白な問題を壊すことなく)次のようなもので私の特定のケースを達成できます
Header append Content-Security-Policy "default-src http://domainA.com;"
Header append Content-Security-Policy "script-src http://domainB.com"
しかし、それは文字列にコンマを挿入するので、応答に追加の文字を追加せずに、一般的に適用できるより良い答えがあるかどうか私はまだ興味を持っていました。
文字列を次のように小さな部分に分割するために使用できるいくつかの連結文字がある場合に理想的です
Header set Content-Security-Policy "default-src http://domainA.com;"
\" script-src http://domainB.com"
または
Header set Content-Security-Policy "default-src http://domainA.com;"^
" script-src http://domainB.com"
または
Header set Content-Security-Policy "default-src http://domainA.com;"
+" script-src http://domainB.com"
あるいは、ある種の変数を設定し、その内容をダンプして次のようなことを行うことができる場合
a="default-src http://domainA.com;"
b=" script-src http://domainB.com"
Header set Content-Security-Policy $a$b
それもはるかに管理しやすいでしょう。
nginxについても同様のトピックがありましたが、結論は長い行をそのまま処理することでした(長い正規表現を扱っていたため、追加ソリューションは機能しませんでした)。これはApacheにも当てはまりますか?
あなたの各サブストリングの後でホールディングシフトとエンターを押すとうまくいきますか?
—
StixO 2016年
@StixOいいえ、この問題は、Apacheがconfファイル内の文字列を解析する方法に関連しています。一般に(通常はHTML)エディターは、このようなショートカットを使用して、改行(<br />など)と段落の区切り(</ p>)を区別します。これは、解析されるマークアップ形式とエディターに依存します。Apache confファイルは純粋なテキストであるため、段落と行の間に区別はありません(修飾子に関係なく、Enterは\ nや\ rのようなシステムに依存する単一の復帰文字を生成します)。
—
MaxPRafferty 2016