我有一個.ini文件,在我的php wab應用程序中有敏感信息。我使用.htaccess文件拒絕訪問到它:拒絕在.htaccess中訪問.ini文件是否安全?
<files my.ini>
order deny,allow
deny from all
</files>
我沒有htdocs目錄的外部訪問的文件夾,所以我不能移動.ini文件出可瀏覽領土。
我的解決方案安全嗎?
我有一個.ini文件,在我的php wab應用程序中有敏感信息。我使用.htaccess文件拒絕訪問到它:拒絕在.htaccess中訪問.ini文件是否安全?
<files my.ini>
order deny,allow
deny from all
</files>
我沒有htdocs目錄的外部訪問的文件夾,所以我不能移動.ini文件出可瀏覽領土。
我的解決方案安全嗎?
.htaccess將阻止來自網絡的訪問。但是,如果您使用的是共享主機環境,則其他用戶可能會訪問您的ini。如果它在(虛擬專用)服務器上,並且您是該服務器的唯一用戶,那麼您是安全的。
在共享主機的情況下,它取決於服務器配置。 欲瞭解更多信息閱讀:PHP Security in a shared hosting environment
可以暫時安裝PHPShell並通過服務器的文件系統瀏覽檢查你的服務器是脆弱的。 (需要一些命令行知識)
該文件在apache中不可見。顯然,最好的選擇是將它放在網站根目錄之外。如果你不能這樣做,.htaccess文件(或者你的apache配置中的類似指令)幾乎是你唯一的選擇。
另一個很好的解決方案和我個人最喜歡的(特別是在開發可能不受我嚴格的.htaccess控制的代碼時)是保護實際的.ini文件。由於一種靈魂here - user notes: pd at frozen-bits dot de,我做的是:
my.ini -> changes to my.ini.php
my.ini.php開始了:
;<?php
;die(); // For further security
;/*
[category]
name="value"
;*/
完美的作品!直接訪問文件,你看到的只是';' 和它是一個有效的,可解析的.ini文件。有什麼理由不喜歡:)
實際執行的幾個注意事項(道歉,如果這算作「overshare」但也許節約一些時間):
;*/
。它仍然有效,如果你離開它,但PHP警告你它將變得心煩意亂。Sorted。