![lighttpd 設定ファイルは $HTTP["url"] 条件設定の解析に失敗しますが、他の設定は機能します。](https://rvso.com/image/657294/lighttpd%20%E8%A8%AD%E5%AE%9A%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AF%20%24HTTP%5B%22url%22%5D%20%E6%9D%A1%E4%BB%B6%E8%A8%AD%E5%AE%9A%E3%81%AE%E8%A7%A3%E6%9E%90%E3%81%AB%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E4%BB%96%E3%81%AE%E8%A8%AD%E5%AE%9A%E3%81%AF%E6%A9%9F%E8%83%BD%E3%81%97%E3%81%BE%E3%81%99%E3%80%82.png)
私は、SSL 付きの lighttpd バージョン 1.4.31 を実行しているサーバー上の特定のパスにあるファイルの MIME タイプを設定しようとしています。
私は次の設定ドキュメントに従っています:ドキュメント
を指定する機能は$PHYSICAL["path"]
lighttpd バージョン 1.5.0 までは搭載されていないため、 を指定しようとしています$HTTP["url"]
。
私は両方試しました
$HTTP["url"] == '/my_path/directory_to_affect/foo.html' {
# my settings are in here
}
そして
$HTTP["url"] =~ '/my_path/directory_to_affect/*' {
# my settings are in here
}
設定ファイルをテストするかlighttpd -D -f lighttpd.conf
、lighttpd を再起動しようとすると、次のエラーが発生します。
2015-04-29 14:37:52: (configfile.c.892) source: /etc/lighttpd/lighttpd.conf line: 48 pos: 12 invalid character in variable name
2015-04-29 14:37:52: (configfile.c.948) configfile parser failed at: ==
=~
または、の代わりにと同じエラーが表示されます==
。
私を混乱させているのは、 where などの他の条件付き構成がすでに存在し$SERVER["socket"] == ":80"
、それらの構成が問題なく機能していることです。
答え1
による設定ファイルの構文に関する lighttpd ドキュメント二重引用符のみサポートされ"
、 は'
サポートされません。
$SERVER["socket"] == ":80"
機能しているようで機能$HTTP["url"] == '/my_path/'
していないというあなたの観察は、これを裏付けています。