在apache配置文件中,如何连接两个字符串?
例如:
"hello" + "world"
// "helloworld"
为什么?
我的CSP的示例可能是想处理大型标头,例如下面的Content-Security-Policy
。您可以看到它具有很好的可维护性格式,但是在标头中发送时,它有多余的空格。
Header set Content-Security-Policy "\
;default-src\
'self'\
;child-src\
'self'\
;connect-src\
'self'\
;font-src\
'self'\
https://*.gstatic.com\
;form-action\
'self';\
;frame-ancestors\
'self'\
;frame-src\
'self'\
;img-src\
'self'\
https://www.google.com/s2/favicons\
https://www.google-analytics.com\
https://*.gstatic.com\
https://*.googleapis.com\
;object-src\
'none'\
;script-src\
'self'\
'unsafe-eval'\
https://www.google-analytics.com\
https://*.googleapis.com\
;style-src\
'self'\
'unsafe-inline'\
https://*.googleapis.com\
;\
"
答案 0 :(得分:3)
我认为您可以像这样声明变量:https://stackoverflow.com/a/15731921/6663198
然后,您可以轻松地连接变量
答案 1 :(得分:0)
OIDCScope "profile email openid offline_access"
OIDCRemoteUserClaim sub
<Location "/app2">
AuthType openid-connect
Require valid-user
ProxyPass "http://192.168.10.237/myapp"
ProxyPassReverse "http://192.168.10.237/myapp"
RewriteEngine On
RewriteRule .* - [E=PROXY_USER:%{LA-U:REMOTE_USER}]
RequestHeader set REMOTE_USER %{PROXY_USER}e
</Location>
</VirtualHost>
答案 2 :(得分:0)
我最好的猜测是使用setenv或define指令声明和定义值,然后简单地使用here指出的${VAR}
语法引用它。
原则上,以下方法应该起作用。
$httpd -DTestCaseOne
...
<IfDefine TestCaseOne>
Define dir_name_one media
Define dir_name_two images
</IfDefine>
...
Include "/etc/httpd/sites/${dir_name_one}-${dir_name_two}/env.conf"
上述参考的服务器版本为-Apache 2.4
答案 3 :(得分:0)
您可以尝试这样:
set $text = 'text';
set $additional "${text}additional";
答案 4 :(得分:0)
到目前为止,我管理的最好的方法是张贴edit*
标题
注意
换行符前的额外空格 \
Header set Content-Security-Policy "\
;default-src \
'self' \
;child-src \
'self' \
;connect-src \
'self' \
"
# Remove unwanted whitespaces
Header edit* Content-Security-Policy "\s\s\s\s" ""
不是 100% 好,有点贵,可能会适得其反,但这是一种方法