2016-04-15 184 views
-6

我需要一個解決方案,如何使Web服務器託管的Web應用程序可以被某些使用PHP語言或Java的計算機機器訪問。我需要將Web應用程序限制在某些計算機上。那麼請告訴我它是如何實現的?如何使Web應用程序只能從某些計算機機器訪問?

+1

你想如何執行訪問?基於IP地址?基於主機名?基於MAC地址?請更具體一些。 – Oldskool

+0

可能重複[htaccess - 使用密碼或ip白名單](http://stackoverflow.com/questions/7667004/htaccess-using-password-or-ip-whitelist) –

+0

@old school,基於MAC地址我需要限制它。如何從服務器獲取客戶機的MAC地址。 –

回答

0

您製作了允許連接到Web服務器的IP地址白名單。

然後你就可以得到客戶端的IP地址在PHP中:

$userIpAddress = $_SERVER['REMOTE_ADDR']; 

或Java中:

String userIpAddress = request.getHeader("Remote_Addr"); 

注意在獲取用戶的真實IP地址可能會非常棘手。看到這些問題:

最簡單的方法,不過,將直接限制在Web服務器配置中的客戶端的訪問。

1

基本上你有幾個選擇。您可以使用Apache身份驗證來保護您的應用程序,這需要用戶輸入用戶名和密碼。您可以使用IP地址限制對應用程序的訪問,或者在應用程序層實施認證。

我不建議使用IP身份驗證壽,因爲它根本不安全。

Apache的身份驗證:apache documentation

PHP認證:PHP Documentation

0

如果您正在使用apache web server,那麼你可以限制在Web服務器配置本身某些IP地址的建議here

這不僅在Apache中,而且在那裏有任何webserver,你可以做同樣的事情,但配置風格不同。

相關問題