簡體   English   中英

如何保護.htaccess的php文件免於php5下載時崩潰

[英]how to protect php file with .htaccess from downloading with php5 crashed

昨晚,我對網絡服務器進行了一些管理員更改。 我使用php。 更新后php處理器失敗,如果有人進入我的主頁,則php頁面將簡單下載並向訪問的任何人顯示專有代碼和密碼。 所以我想知道是否有一種方法可以防止使用.htaccess進行php文件的任何形式的下載-但仍允許正常查看文件。

在開發過程中遵循的一個好的模式是使用最小的初始化文件,該文件調用駐留在webroot之外的實際應用程序。 這樣,在這種情況下,只暴露了沒有關鍵信息的最小存根。

簡化示例:

/
  /app
    critical_code.php
  /webroot
    .htaccess   <- rewrites all requests to index.php
    index.php   <- invokes ../app/critical_code.php (or other files as requested)

這里的問題是.htaccess是否正在向用戶提供文件。 您不能告訴它拒絕訪問.php文件,因為在正常使用期間,訪問也會被拒絕。 沒有正確運行的PHP處理器沒有后備行為。

這樣做時,也許值得暫時將網絡根目錄移到“維護中”的站點,以最大程度地降低風險。

假設您使用的是Apache,那么您的.htaccess文件將如下所示。

<FilesMatch ".*\.php">
    Order allow,deny
    Deny from all
    Satisfy All
</FilesMatch>
<IfModule php5_module>
    <FilesMatch ".*\.php">
        Allow from all
        Satisfy All
    </FilesMatch>
</IfModule>

第一條規則拒絕訪問所有.php文件。 默認情況下,用戶將看到403(禁止)錯誤。

如果PHP5模塊成功加載,第二條規則將生效,這將授予訪問權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM