2013-07-15 169 views
-1

我正在創建一個網站,但我只想使用私人公司的無線網絡「XXX」的人可以訪問它。這樣,人們不能只從家中進入該網站。有沒有人有一個想法如何我可以做到這一點與PHP?我讀了靜態IP地址,但不清楚這是否是這個目標的可行選擇。限制基於wifi的網站訪問

在此先感謝您的任何想法。

+0

我不確定,如果'HTTP'提供關於連接類型的信息,除了瀏覽器信息,但是一個很好的問題,儘管如此,也許更適合[webmasters.stackexchange.com](http://webmasters.stackexchange.com ) – samayo

+2

這是您將在服務器級別(IE:Apache)或路由器級別限制更多的內容。 –

+0

我會使用IP,這取決於公司的設置,但只與'合適'的用戶一起管理 – 2013-07-15 23:10:02

回答

0

一般來說,你可以用服務器配置(Apache)或路由器配置來限制這種東西。但是,如果您想在PHP中使用解決方案,則可以使用IP地址。你可以限制訪問您的網站的IP範圍,此方法將驗證該電流IP允許的範圍內和死,如果它不是:

function CheckAccess() 
{ 
    $fromip = '127.0.0.1'; 

    $toip = '127.0.0.100'; 

    $ip = ip2long($_SERVER['REMOTE_ADDR']); 

    return ($ip >= ip2long($fromip) && $ip <= ip2long($toip)); 
} 

if (!CheckAccess()) 
{ 
    die('Unauthorized access'); 
} 
+0

感謝大家的評論。大多數人有類似的答案,但我只能選中一個人qq。我可能會與一些人交談,看看這3個選項中最好的選擇是什麼。謝謝! – user2562568

1

你所尋找的是創建一個內聯網。這就像將所有內容放在本地主機上,只能由共享相同內部網的人員訪問。這不是一個真正的PHP代碼,而是你如何在你的網站上設置你的域名。您基本上想要將您的網站設置在直接位於您的網絡上的您所擁有的專用服務器上。如果您使用的是Windows,則可以使用Internet信息服務(IIS)等來執行此操作。

基本上你正在做的是讓你的網站不存在於你的個人(或工作)網絡之外。

0

只要您使用的Web服務器位於不轉發端口的路由器後面,該防火牆就應該阻止任何來自互聯網的大部分內容默認訪問您的站點。

0

你真的不需要讓PHP完全照顧。您可以配置您的Web服務器(或Web服務器上的虛擬主機)以僅處理本地網絡。賓果,你有一個內聯網站點。

它更安全,因爲如果您使用PHP代碼來控制訪問,您將無法控制對靜態內容(如圖像,文檔或一般下載)的訪問。