当他访问我的内部网页时,我需要检索当前login的Windows用户的用户名。 我正尝试在Windows Server 2008上使用SSPI(mod_auth_sspi.so)和Apache 2.2来validation我的网页。 我已经对httpd.conf文件进行了以下更改,并将我的Intranet站点添加到浏览器设置上的受信任站点。 我的网页是在Perl中,正在使用CGI.pm。 我尝试通过$ cgi-> user_name()和$ cgi-> remote_user()检索用户名,并检查REMOTE_USER和AUTH_USER cgi ENVvariables以获取用户名。
<IfModule !mod_auth_sspi.c> LoadModule sspi_auth_module modules/mod_auth_sspi.so </IfModule> <Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs/TestWeb/"> <Files Test.pl> AuthName "TestWeb" AuthType SSPI SSPIAuth On SSPIAuthoritative On SSPIOfferBasic Off Require valid-user SSPIDomain domain name </Files> </Directory>
更改后我重新启动了Apache。 我没有看到cgi环境variables来获取环境variables中的用户标识符。 我已经search了同一个论坛和其他人,这就是他们已经完成的工作。 我错过了什么吗? 感谢任何帮助。
谢谢
包括选项让我为我工作
FollowSymLinks ExecCGI命令允许,拒绝全部允许
在目录指令中。 我有从其他目录位置引用的原始文件。