如何修复[此处不允许]的语法错误?

如何修复[此处不允许]的语法错误?

我在下面设置了 2 个标头,用于将从 Siteminder 返回的 SAML 值转换为 HTTP 标头。

MellonSetEnvNoPrefix YYY_ID yyy
MellonSetEnvNoPrefix XXX_ROLE xxx

启动apache后出现以下错误:

Starting httpd: Syntax error on line 8 of /XXX/XXXXX/XXXX/auth_mellon.conf:

MellonSetEnvNoPrefix not allowed here 
                                          [FAILED]

如何修复这个语法错误?

答案1

我会仔细检查您是否已mod_auth_mellon在 Apache 中安装并加载了该模块。有关如何实现此目的的文档在这里 -https://github.com/Uninett/mod_auth_mellon

然后确认模块已加载:

LoadModule auth_mellon_module /usr/lib/apache2/modules/mod_auth_mellon.so

加载模块后,这些消息可能会停止。如果您发现它们没有,您可能需要将这些属性放在一个<Location /xxxx>块中,以告诉 Apache 在加载时哪个位置应该使用它们。上面提供的 URL 再次显示了更多这样的示例:

###########################################################################
# End of global configuration for mod_auth_mellon.
###########################################################################    

# This defines a directory where mod_auth_mellon should do access control.
<Location /secret>    
...
...
# MellonSetEnvNoPrefix is identical to MellonSetEnv, except this
# does not prepend 'MELLON_' to the constructed environment variable.
# The syntax is 'MellonSetEnvNoPrefix <local name> <IdP name>'.
# You can list multiple MellonSetEnvNoPrefix directives.
# Default. None set.
# MellonSetEnvNoPrefix "DISPLAY_NAME" "displayName"

MellonSetEnvNoPrefix YYY_ID yyy
MellonSetEnvNoPrefix XXX_ROLE xxx

</Location>

相关内容