如何使用Acquia平台配置SimpleSAMLphp?

时间:2017-04-04 16:49:42

标签: apache drupal-8 simplesamlphp acquia

我正在关注Acquia网站https://docs.acquia.com/articles/using-simplesamlphp-acquia-cloud-site关于配置SimpleSAMLphp的说明,看起来文档不是很精确。在他们的文档中,它说要运行以下命令来安装SimpleSAMLphp库。

cd docroot; ln -s ../simplesamlphp/www simplesaml

要安装安装simplesamlphp_auth Drupal模块,它们会链接到 simpleSAMLphp身份验证页面https://www.drupal.org/project/simplesamlphp_auth。在 SimpleSAMLphp安装中,它链接到 SimpleSAMLphp安装和配置页面https://simplesamlphp.org/docs/stable/simplesamlphp-install。但是,此页面中的说明看起来就像我在Acquia文档的第二步中所做的那样。它不是在docroot中提取simplesamlphp-1.x.y,而是建议在var文件夹中提取它。

现在,一旦我完成了关于Acquia文档的说明并尝试访问simplesaml https://mywebsite.dd:8443/simplesaml/,我就会收到以下错误:

禁止 您无权访问此服务器上的/ simplesaml /。

所以我找到了这个线程Getting a 403 forbidden error for simplesaml after Apache upgrade,它讨论了 SimpleSAMLphp安装和配置指令中的第6步的错误。所以我去了/Applications/DevDesktop/apache/conf/extra/httpd-vhosts.conf并配置了以下内容:

<VirtualHost *:8083>
     ServerAdmin userName@mywebsite.com
     DocumentRoot "/Users/userName/sites/drupalsites/docroot"
     ServerName drupalsites.local
     ServerAlias drupalsites.local
     ErrorLog "logs/drupalsites-error_log"
     CustomLog "logs/drupalsites-access_log" common
     <Directory "/Users/userName/sites/drupalsites/docroot">
         Options Indexes FollowSymLinks Includes ExecCGI
         AllowOverride All
         Require all granted
     </Directory>

     Alias /simplesaml simplesamlphp/www

    <Directory "/Users/userName/sites/drupalsites/simplesamlphp/www">
         Require all granted
     </Directory>

 </VirtualHost>

但是,我仍然遇到同样的错误。

禁止

您无权访问此服务器上的/ simplesaml /。

所以,问题是,我是否以错误的方式安装SimpleSAMLphp?第二,如果没有,我哪里出错了?第三,如何解决此错误并重新回到正轨?我还发现了这个文档https://www.chapterthree.com/blog/how-to-configure-simplesamlphp-for-drupal-8-on-acquia,它讲述了在Aquia的平台上设置SimpleSAMLphp,但它与我上面列出的其他文档不一致。所以,我不确定应该遵循哪一个。任何建议都非常感谢。

2 个答案:

答案 0 :(得分:1)

尝试将此添加到您的docroot / .htaccess

RewriteCond %{REQUEST_URI} !^/simplesaml

答案 1 :(得分:0)

更准确地说@realgt回答:

  # Copy and adapt this rule to directly execute PHP files in contributed or
  # custom modules or to run another PHP application in the same directory.
  RewriteCond %{REQUEST_URI} !/core/modules/statistics/statistics.php$
+ # Allow access to simplesaml paths
+ RewriteCond %{REQUEST_URI} !^/simplesaml
  # Deny access to any other PHP files that do not match the rules above.
  RewriteRule "^.+/.*\.php$" - [F]

此链接中提供了以下内容: https://www.chapterthree.com/blog/how-to-configure-simplesamlphp-for-drupal-8-on-acquia