以前我使用IIS服務器作爲PHP服務器。目前,它是apache。Apache - 如何獲得REMOTE_USER變量
在IIS上,我可以訪問變量$_SERVER ['REMOTE_USER']
,該變量返回用戶名和域(例如domain \ user),但是在安裝XAMPP後,此變量不可用。
我該怎麼做才能讓這個變量重新獲得?
我的應用程序是沒有互聯網連接的局域網上
以前我使用IIS服務器作爲PHP服務器。目前,它是apache。Apache - 如何獲得REMOTE_USER變量
在IIS上,我可以訪問變量$_SERVER ['REMOTE_USER']
,該變量返回用戶名和域(例如domain \ user),但是在安裝XAMPP後,此變量不可用。
我該怎麼做才能讓這個變量重新獲得?
我的應用程序是沒有互聯網連接的局域網上
終於搞定了! :d
從這裏下載模塊https://www.apachehaus.net/modules/mod_authnz_sspi/(x86的32位和x64 64位阿帕奇)
複製從Apache24\modules
文件夾中的mod_authnz_sspi.so並將其放置在你的Apache的模塊文件夾您的網絡服務器上的文件夾
在httpd.conf文件(您的apache的配置文件)下放置這行代碼。嘗試加載此作爲最後一個模塊:
LoadModule authnz_sspi_module modules/mod_authnz_sspi.so
確保以下模塊註釋掉
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_core_module modules/mod_authz_core.so
PS:以上兩個模塊都需要這工作。
放置在你的httpd.conf文件將下面的代碼
<Directory "path/to/your/htcdocs/folder"> Options None AllowOverride All Order allow,deny Allow from all #AuthName "SSPI Protected Place" AuthType SSPI SSPIAuth On SSPIAuthoritative On SSPIOfferBasic On SSPIOmitDomain On Require valid-user </Directory>
重新啓動你的apache servive,並希望它應該沒有任何問題重新啓動。
回聲$ _SERVER [ 'PHP_AUTH_USER'];
就這樣。
我使用:
如果Apache實際上已經認證的用戶只能訪問遠程用戶,請檢查the apache auth howto。
<Directory "path/to/your/htcdocs/folder">
Options None
AllowOverride All
Order allow,deny
Allow from all
#AuthName "SSPI Protected Place"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIOfferBasic On
SSPIOmitDomain On
Require valid-user
</Directory>
如果使用ModRewrite或其他建議你保持
Options Indexes FollowSymLinks Includes ExecCGI
否則你會得到這樣的錯誤
[rewrite:error]: Options FollowSymLinks and SymLinksIfOwnerMatch are both off, so the RewriteRule directive is also forbidden due to its similar ability to circumvent directory restrictions
我只說真棒........ – Sachin
有沒有人比較過這個新的[mod_authn_ntlm](https://www.apachelounge.com/viewtopic.php?p=25073)模塊? mod_authnz_sspi和mod_authn_ntlm似乎都是在同一時間發佈的。有什麼區別? –