簡體   English   中英

除了服務器本身之外,拒絕訪問.php文件

[英]Deny access to .php files apart from the server itself

如何編寫.htaccess腳本來阻止用戶在某個目錄及其子目錄中運行.php文件?

我將需要能夠包含來自服務器index.php或其他文件的php文件,基本上,我想允許服務器包含來自某個目錄的php文件,但是,如果用戶鍵入特定的網址,它將拒絕訪問。

這可以解決問題

<FilesMatch "\.php$">
   Deny from all
<FilesMatch>

另外,請參見以下問題的答案: 拒絕直接訪問除index.php之外的所有.php文件

我通常會這樣:

如果我希望用戶訪問文件,請說members.phpindex.php

<?php
    $GLOBAL_PAGE="page name"; //set the 'visible' flag
    include_once 'headers.php'
...
?>

headers.php

<?php
     if(!page_is_authorized($GLOBAL_PAGE))
         //redirect to a valid page
         header( 'Location: index.php' );
     ....
?>

其中page_is_authorized($s)根據有效值列表檢查$s

我知道這不會按照您的要求使用.htaccess規則,但是我通常無權訪問該文件,因此就可以了。 它也是便攜式的!

暫無
暫無

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

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