我正在尝试将simpleSAMLphp与我的应用程序集成,但我遇到了这个问题:
当我执行requireAuth方法时,我会被重定向到404页面,更具体地说是“http://test.localhost/simplesaml/module.php/saml/disco.php {很多参数}}”
这当然给了我404找不到,因为我的simplesamlphp虚拟主机是“http://simplesamlphp.localhost”
我错过了哪种配置?
以下是我的申请的完整代码:
<?php
require_once('/var/simplesamlphp/lib/_autoload.php');
$as = new SimpleSAML_Auth_Simple('default-sp');
$as->requireAuth();
$attributes = $as->getAttributes();
print_r($attributes);
以下是我的虚拟主机配置,位于/etc/apache2/sites-enabled/000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName simplesamlphp.localhost
DocumentRoot /var/www/simplesamlphp.localhost
Alias /simplesaml /var/simplesamlphp/www
</VirtualHost>
<VirtualHost *:80>
ServerName teste.localhost
DocumentRoot /var/www/html/teste/
</VirtualHost>
答案 0 :(得分:1)
尝试在$config[baseurlpath]
中将http://simplesamlphp.localhost/simplesaml/
设为/var/simplesamlphp/config/config.php
。
这应该允许SimpleSamlPHP重定向到有效的URI,以便它可以提供更有用的错误消息。