2016-06-28 40 views
0

我幾個星期前,我想創建一個應用程序,因爲我現在想出了一個好主意,首先我想實現它在網頁上,並且有幾種方法如何創建一個網頁很好。使網頁100%私人,如果沒有登錄

第一種可能的方法是在本地創建它並設置服務器。然後你可以在PHP中安裝MySQL等等......你可以在脫機時基本上開發它。

第二種方式是找到一個好的託管,並開始主持創建的網頁,通常所有這些託管服務有PHP MySQL和所有這些東西預裝,所以你可以在第二

我不希望任何人啓動看我做什麼之前我釋放它,我也沒有人看到它,也許偷或創造同樣的事情,因爲我在做

創建網頁的第一種方式可能更安全,因爲你不分享所有的源代碼其他任何人,但如果我想使用託管的方式來做到這一點,我怎麼能確保沒有人能夠進入?更確切地說:

我寫到每個php文件的開始,如果!isset($ _ SESSION ['user'])不存在然後header(location:index.php),現在你可能會問我爲什麼?因爲我創建了一個登錄表單,你必須登錄,現在註冊不起作用,所以我剛纔在數據庫中創建了一個帳號,那麼這個安全嗎?我的目標是沒有人可以訪問我沒有登錄的phpfiles,甚至認爲他們在託管,沒有登錄你應該無法打開它們,只有index.php其中包含像這樣的東西:你好,請登錄繼續,這樣安全嗎?這是多麼安全,所以我可以例如在我的卡上的證書在該PHP頁面?有人不能真正登錄就模擬一個SESSION?並打開這些網頁,即使認爲有一個條件,如果沒有設置會話名稱,然後重定向index.php?謝謝,有什麼風險? 我應該換用本地開發嗎?

+0

[你可以使用'HTACCESS'來限制IP地址訪問的網站(http://stackoverflow.com/a/4400412/128161) –

+0

HTTP:/ /stackoverflow.com/help/on-topic –

回答

1

您應該真正在本地開發它,而不是爲了確保您顯然不希望任何人看到的在線頁面。

瞭解本地Web開發要比爲在線頁面實施嚴格的安全措施要容易得多。

我可以親自推薦MAMP。

0

在將要生活的主機上開發軟件可能會有所幫助,並且可以幫助您節省解決如何自行創建主機的麻煩。

大多數主機都使用Apache作爲Web服務器,所以我建議只在Apache的.htaccess文件中添加一些指令。

最簡單的是通過IP來添加拒絕規則和塊:

deny from all 
allow from 123.123.123.123 

另一種選擇是要求輸入登錄信息。這裏有一篇關於這樣做的文章:https://wiki.apache.org/httpd/PasswordBasicAuth

如果你的主機有cPanel,而且很多都做,從cPanel內部添加密碼保護是微不足道的。

這些都不會影響您的編碼,或者需要任何可能導致錯誤的東西。將該權限放在文檔根目錄中應該很容易,並且您可以在準備啓動時簡單地刪除這些行。

0

如果我理解正確,你的魔杖是爲你的網站創建一個「維護模式」

如果是這樣,你可以創建像config.ini文件:

maintenance_mode=true ;Use true or false here 
maintenance_access_ip="your_ip_here" ;Use your external ip. Example: "192.168.0.1" 

並把下面的代碼在腳本的頂部:

$configs = parse_ini_file('path/to/config.ini'); 

if(
    $configs['maintenance_mode'] 
    && $_SERVER['REMOTE_ADDR'] != $configs['maintenance_access_ip'] 
){ 
    //Redirect your user to a page informing your user that your service is down 
    header('Location: maintenance.php'); 
    die(); 
} 
+0

我想限制訪問網頁,但我需要比登錄更復雜的東西 – wolf4

0

你需要驗證你的索引頁與您的IP地址。按照下面的代碼

if($_SERVER['REMOTE_ADDR']=="YOUR IP ADDRESS") 
{ 
    //Your Index Page Code 
}else 
{ 
    echo "Not Accessable"; 
} 

其他明智的做這樣的。把下面的代碼在主頁的頂部

if($_SERVER['REMOTE_ADDR']!="YOUR IP ADDRESS") 
{ 
    //exit or die 
} 
相關問題