3

私のcodeingiterWebアプリケーションのディレクトリ「application」と「system」内のすべてのサブディレクトリには、index.htmlファイルがあります。このHTMLファイルの中には、標準のエラーメッセージのように見えるものがあります。このコードが含まれています:

<html>
    <head>
        <title>403 Forbidden</title>
    </head>
    <body>
        <p>Directory access is forbidden.</p>
    </body>
</html>

これらは、「application」または「system」内のディレクトリにアクセスしようとすると、すべてのファイルが一覧表示されるのではなく、エラーが表示されるように作成されていると思います。

ただし、すべてのアクセスを拒否するために各ディレクトリに.htaccessを追加したため、これらは冗長に見えます。これら2つのディレクトリ内のすべてのPHPファイルにも最初の行があります。

if ( ! defined('BASEPATH')) exit('No direct script access allowed');

これは、誰もこれらのファイルをまったく表示できないことを意味するはずです(私は、.htaccessによって1回、PHPのその行によって1回保護されているため)。

したがって、私の質問は、Webアプリケーションを整理して整理し、整理しておくために、これらのindex.htmlファイルを安全に削除できるかどうかです。これは私のcodeigniterWebアプリケーションに悪い副作用を引き起こしますか?

前もって感謝します

4

6 に答える 6

2

はい、削除できます。

しかし、あなたが適切な権利を持っているとしても、あなたはそこにそれらを持っているべきです。それらは目的のためだけにあるので、万が一、適切なディレクトリ参照権を実装するのを忘れた場合

于 2012-08-11T12:48:39.793 に答える
1

.htaccessファイルにリダイレクトされない、またはファイルとの関係がないファイルを設定する限り、index.htmlを削除しても安全です(保持する必要はありません)index.html。ただし、注意が必要です。index.htmlあなたがあなたの失敗した場合に役立つことができます.htaccess

于 2012-08-11T12:52:15.580 に答える
1

一般に、これらの index.html ファイルは削除できますが、Web サーバー構成でディレクトリ インデックスが無効になっていることを確認する必要があります。

Apache Web サーバーの場合、次のようにグローバル構成または .htaccess ファイルでOptions -Indexesを使用できます。

<Directory /wwwdata/ >

    #disable directory index
    Options -Indexes

    #other options ...

</Directory>

CodeIgniter のこれらの index.html ファイルは、深刻なセキュリティ フローにつながる可能性のあるディレクトリ リストを (いずれにせよ) 防止します。

于 2012-08-11T12:53:23.773 に答える
0

.htaccessとbasepathの条件チェックで十分であることに同意しますが、2つのディレクトリに2つのhtmlファイルがあると実際には何も散らかっているとは思いません。Webに物を置くときは、十分に注意することはできません。CodeIgniterの人たちは、追加する前にそれについて考えていたはずです。

私は実際にそれらを削除する付加価値を見ていませんが、それがあなたがやりたいことであるならば、先に進んでください。

于 2012-08-11T12:48:50.213 に答える
0

ただし、index.htmlも保持することをお勧めします。index.htmlを保持してもアプリケーションに害はありませんが、何らかの保護が行われることを確認してください。

于 2012-08-11T12:50:13.803 に答える
0

.htaccess を使用してディレクトリへのアクセスを禁止している場合は、それらを安全に削除して心配を解消できます。

ただし、ディレクトリが何らかの理由で PHP スクリプトによって使用され、それらのディレクトリに何かを配置し、ユーザーへのリンクを提供する場合は、適切に機能せず、.htaccess 制限を削除する必要があります。

index.htmlを空白のままにしておくことをお勧めします。ユーザーがディレクトリに到達すると、空白のページが表示されます。

または、ユーザーをindex.phpで強制的にメイン ページにリダイレクトすることもできます。次に例を示します。

<?php
  header("Location: ../");
?>
于 2012-08-11T12:53:27.760 に答える